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"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2019-03-15 ven. 16:46 --> <!-- 2019-03-19 mar. 16:42 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Measurement Analysis</title> <title>Measurement Analysis</title>
@ -245,6 +245,28 @@ for the JavaScript code in this tag.
} }
/*]]>*///--> /*]]>*///-->
</script> </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> </head>
<body> <body>
<div id="content"> <div id="content">
@ -253,14 +275,17 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2> <h2>Table of Contents</h2>
<div id="text-table-of-contents"> <div id="text-table-of-contents">
<ul> <ul>
<li><a href="#org77cefe9">1. Measurement Description</a></li> <li><a href="#orgc1db046">1. Measurement Description</a></li>
<li><a href="#org9f4b317">2. Importation of the data</a></li> <li><a href="#org9b5288f">2. Importation of the data</a></li>
<li><a href="#org3defd95">3. Variables for analysis</a></li> <li><a href="#org0c9206e">3. Variables for analysis</a></li>
<li><a href="#orgdb61c3a">4. Measurement 1 - Effect of Ty stage</a></li> <li><a href="#org876fa12">4. Coherence between the two vertical geophones on the Tilt Stage</a></li>
<li><a href="#orgaed21d3">5. Measurement 2 - Effect of Ry stage</a></li> <li><a href="#org0e81d2f">5. Data Post Processing</a></li>
<li><a href="#org70fba3b">6. Measurement 3 - Effect of the Hexapod</a></li> <li><a href="#org07adbbe">6. Normalization</a></li>
<li><a href="#org9d0ea22">7. Measurement 4 - Effect of the Splip-Ring and Spindle</a></li> <li><a href="#org854c7bf">7. Measurement 1 - Effect of Ty stage</a></li>
<li><a href="#org80c9209">8. Measurement 5 - Transmission from ground to marble</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> </ul>
</div> </div>
</div> </div>
@ -269,22 +294,19 @@ for the JavaScript code in this tag.
<a href="../index.html">Back to main page</a>. <a href="../index.html">Back to main page</a>.
</p> </p>
<div id="outline-container-org77cefe9" class="outline-2"> <div id="outline-container-orgc1db046" class="outline-2">
<h2 id="org77cefe9"><span class="section-number-2">1</span> Measurement Description</h2> <h2 id="orgc1db046"><span class="section-number-2">1</span> Measurement Description</h2>
<div class="outline-text-2" id="text-1"> <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><img src="./figs/setup_picture.png" alt="setup_picture.png" />
</p> </p>
<p><span class="figure-number">Figure 1: </span>Picture of the setup for the measurement</p> <p><span class="figure-number">Figure 1: </span>Picture of the setup for the measurement</p>
</div> </div>
<p> <p>
Sensors: The sensor used are 3 L-4C geophones (<a href="../actuators-sensors/index.html#MissingReference">Documentation</a>).
</p> </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> <p>
Each motor are turn off and then on. 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> </div>
<div id="outline-container-org9f4b317" class="outline-2"> <div id="outline-container-org9b5288f" class="outline-2">
<h2 id="org9f4b317"><span class="section-number-2">2</span> Importation of the data</h2> <h2 id="org9b5288f"><span class="section-number-2">2</span> Importation of the data</h2>
<div class="outline-text-2" id="text-2"> <div class="outline-text-2" id="text-2">
<p> <p>
First, load all the measurement files: First, load all the measurement files:
@ -322,10 +344,10 @@ meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">4</span>
</div> </div>
<p> <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> </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> <caption class="t-above"><span class="table-number">Table 1:</span> Channels for measurements 1 to 4</caption>
<colgroup> <colgroup>
@ -378,9 +400,9 @@ For the measurements 1 to 4, the measurement channels are shown table <a href="#
<p> <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> </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> <caption class="t-above"><span class="table-number">Table 2:</span> Channels for measurement 5</caption>
<colgroup> <colgroup>
@ -413,35 +435,11 @@ For the measurement 5, the channels are shown table <a href="#org5758635">2</a>.
</tr> </tr>
</tbody> </tbody>
</table> </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> </div>
<div id="outline-container-org3defd95" class="outline-2"> <div id="outline-container-org0c9206e" class="outline-2">
<h2 id="org3defd95"><span class="section-number-2">3</span> Variables for analysis</h2> <h2 id="org0c9206e"><span class="section-number-2">3</span> Variables for analysis</h2>
<div class="outline-text-2" id="text-3"> <div class="outline-text-2" id="text-3">
<p> <p>
We define the sampling frequency and the time vectors for the plots. 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"> <div class="org-src-container">
<pre class="src src-matlab">Fs = <span style="color: #BFEBBF;">256</span>; <span style="color: #7F9F7F;">% [Hz]</span> <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>; 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>; 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;">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>; 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;">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>; 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;">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>; 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;">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>; 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> </pre>
</div> </div>
@ -477,41 +475,168 @@ Then we define the windows that will be used to average the results.
</div> </div>
</div> </div>
<div id="outline-container-orgdb61c3a" class="outline-2"> <div id="outline-container-org876fa12" class="outline-2">
<h2 id="orgdb61c3a"><span class="section-number-2">4</span> Measurement 1 - Effect of Ty stage</h2> <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"> <div class="outline-text-2" id="text-4">
<p> <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> </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> <caption class="t-above"><span class="table-number">Table 3:</span> Stages configuration - Measurement 1</caption>
<colgroup> <colgroup>
<col class="org-left" /> <col class="org-left" />
<col class="org-right" /> <col class="org-left" />
<col class="org-left" /> <col class="org-left" />
</colgroup> </colgroup>
<thead> <thead>
<tr> <tr>
<th scope="col" class="org-left">Time</th> <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> <th scope="col" class="org-left">309-end</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td class="org-left">Ty</td> <td class="org-left">Ty</td>
<td class="org-right">OFF</td> <td class="org-left">OFF</td>
<td class="org-left">ON</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> </tr>
</tbody> </tbody>
</table> </table>
<p> <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> </p>
<div class="important"> <div class="important">
@ -523,10 +648,10 @@ How can we explain that?
</div> </div>
<div id="org1bae9b4" class="figure"> <div id="org7592c33" class="figure">
<p><img src="figs/meas1.png" alt="meas1.png" /> <p><img src="figs/meas1.png" alt="meas1.png" />
</p> </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> </div>
<p> <p>
@ -534,58 +659,58 @@ To understand what is going on, instead of looking at the velocity, we can look
</p> </p>
<div class="org-src-container"> <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>; <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> </pre>
</div> </div>
<p> <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> </p>
<div id="org8cf5d4c" class="figure"> <div id="orgf6e2558" class="figure">
<p><img src="figs/meas1_disp.png" alt="meas1_disp.png" /> <p><img src="figs/meas1_disp.png" alt="meas1_disp.png" />
</p> </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> </div>
<p> <p>
We when compute the power spectral density of each measurement before and after turning on the stage. We when compute the power spectral density of each measurement before and after turning on the stage.
</p> </p>
<div class="org-src-container"> <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>; <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, 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>; <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>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, 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>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>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, 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>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> </pre>
</div> </div>
<p> <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> </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><img src="figs/meas1_ry_z_psd.png" alt="meas1_ry_z_psd.png" />
</p> </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>
<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><img src="figs/meas1_ry_tilt_psd.png" alt="meas1_ry_tilt_psd.png" />
</p> </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>
<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><img src="figs/meas1_ty_y_psd.png" alt="meas1_ty_y_psd.png" />
</p> </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>
<div class="important"> <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> </div>
<div id="outline-container-orgaed21d3" class="outline-2"> <div id="outline-container-orga8c4982" class="outline-2">
<h2 id="orgaed21d3"><span class="section-number-2">5</span> Measurement 2 - Effect of Ry stage</h2> <h2 id="orga8c4982"><span class="section-number-2">8</span> Measurement 2 - Effect of Ry stage</h2>
<div class="outline-text-2" id="text-5"> <div class="outline-text-2" id="text-8">
<p> <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> </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> <caption class="t-above"><span class="table-number">Table 4:</span> Stages configuration - Measurement 2</caption>
<colgroup> <colgroup>
<col class="org-left" /> <col class="org-left" />
<col class="org-right" /> <col class="org-left" />
<col class="org-left" /> <col class="org-left" />
</colgroup> </colgroup>
<thead> <thead>
<tr> <tr>
<th scope="col" class="org-left">Time</th> <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> <th scope="col" class="org-left">326-end</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td class="org-left">Tilt</td> <td class="org-left">Ty</td>
<td class="org-right">OFF</td> <td class="org-left">OFF</td>
<td class="org-left">ON</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> </tr>
</tbody> </tbody>
</table> </table>
<p> <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> </p>
<div id="org943e97d" class="figure"> <div id="org17e1967" class="figure">
<p><img src="figs/meas2.png" alt="meas2.png" /> <p><img src="figs/meas2.png" alt="meas2.png" />
</p> </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> </div>
<p> <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> </p>
<div class="org-src-container"> <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>; <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, 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>; <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>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, 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>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>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, 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>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> </pre>
</div> </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><img src="figs/meas2_ry_z_psd.png" alt="meas2_ry_z_psd.png" />
</p> </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>
<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><img src="figs/meas2_ry_tilt_psd.png" alt="meas2_ry_tilt_psd.png" />
</p> </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>
<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><img src="figs/meas2_ty_y_psd.png" alt="meas2_ty_y_psd.png" />
</p> </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>
<div class="important"> <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> </div>
<div id="outline-container-org70fba3b" class="outline-2"> <div id="outline-container-orga79f5f4" class="outline-2">
<h2 id="org70fba3b"><span class="section-number-2">6</span> Measurement 3 - Effect of the Hexapod</h2> <h2 id="orga79f5f4"><span class="section-number-2">9</span> Measurement 3 - Effect of the Hexapod</h2>
<div class="outline-text-2" id="text-6"> <div class="outline-text-2" id="text-9">
<p> <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> </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> <caption class="t-above"><span class="table-number">Table 5:</span> Stages configuration - Measurement 3</caption>
<colgroup> <colgroup>
@ -721,69 +870,87 @@ The hexapod is turned off after 406 seconds (table <a href="#org6a7c5e2">5</a>).
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td class="org-left">Tilt</td> <td class="org-left">Ty</td>
<td class="org-left">ON</td> <td class="org-left">OFF</td>
<td class="org-left">ON</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>
<tr> <tr>
<td class="org-left">Hexa</td> <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> <td class="org-left">OFF</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<p> <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> </p>
<div id="orgd89f632" class="figure"> <div id="orgcdae346" class="figure">
<p><img src="figs/meas3.png" alt="meas3.png" /> <p><img src="figs/meas3.png" alt="meas3.png" />
</p> </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> </div>
<p> <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> </p>
<div class="org-src-container"> <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>; <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, 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>; <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>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, 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>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>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, 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>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> </pre>
</div> </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><img src="figs/meas3_hexa_z_psd.png" alt="meas3_hexa_z_psd.png" />
</p> </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>
<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><img src="figs/meas3_ry_z_psd.png" alt="meas3_ry_z_psd.png" />
</p> </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>
<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><img src="figs/meas3_ty_y_psd.png" alt="meas3_ty_y_psd.png" />
</p> </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>
<div class="important"> <div class="important">
<p> <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> </p>
<ul class="org-ul"> <ul class="org-ul">
<li>at 17Hz</li> <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> </div>
<div id="outline-container-org9d0ea22" class="outline-2"> <div id="outline-container-org8731abc" class="outline-2">
<h2 id="org9d0ea22"><span class="section-number-2">7</span> Measurement 4 - Effect of the Splip-Ring and Spindle</h2> <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-7"> <div class="outline-text-2" id="text-10">
<p> <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> </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> <caption class="t-above"><span class="table-number">Table 6:</span> Stages configuration - Measurement 4</caption>
<colgroup> <colgroup>
@ -822,11 +989,32 @@ The slip ring is turned on at 300s, then the spindle is turned on at 620s (table
</tr> </tr>
</thead> </thead>
<tbody> <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> <tr>
<td class="org-left">SlipRing</td> <td class="org-left">SlipRing</td>
<td class="org-left">OFF</td> <td class="org-left">OFF</td>
<td class="org-left">ON</td> <td class="org-left"><b>ON</b></td>
<td class="org-left">ON</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>
<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>
<td class="org-left">OFF</td> <td class="org-left">OFF</td>
</tr> </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> </tbody>
</table> </table>
<div id="org31e7fd0" class="figure"> <div id="orgcdcd20d" class="figure">
<p><img src="figs/meas4.png" alt="meas4.png" /> <p><img src="figs/meas4.png" alt="meas4.png" />
</p> </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> </div>
<p> <p>
The PSD of each track are computed using the code below. The PSD of each track are computed using the code below.
</p> </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><img src="figs/meas4_hexa_z_psd.png" alt="meas4_hexa_z_psd.png" />
</p> </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>
<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><img src="figs/meas4_ry_z_psd.png" alt="meas4_ry_z_psd.png" />
</p> </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>
<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><img src="figs/meas4_ty_y_psd.png" alt="meas4_ty_y_psd.png" />
</p> </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>
<div class="important"> <div class="important">
<p> <p>
Turning ON the splipring seems to not add motions on the stages measured. 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>
<p> <p>
@ -897,26 +1078,26 @@ Turning ON the spindle induces motions:
</div> </div>
</div> </div>
<div id="outline-container-org80c9209" class="outline-2"> <div id="outline-container-org33dc0ed" class="outline-2">
<h2 id="org80c9209"><span class="section-number-2">8</span> Measurement 5 - Transmission from ground to marble</h2> <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-8"> <div class="outline-text-2" id="text-11">
<p> <p>
This measurement just consists of measurement of Y-Z motion of the ground and the marble. This measurement just consists of measurement of Y-Z motion of the ground and the marble.
</p> </p>
<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> </p>
<div id="orgdac3588" class="figure"> <div id="orgc71b335" class="figure">
<p><img src="figs/meas5.png" alt="meas5.png" /> <p><img src="figs/meas5.png" alt="meas5.png" />
</p> </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> </div>
<p> <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> </p>
<div class="org-src-container"> <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>
<div id="orga4d8654" class="figure"> <div id="org69a4967" class="figure">
<p><img src="figs/meas5_z_psd.png" alt="meas5_z_psd.png" /> <p><img src="figs/meas5_z_psd.png" alt="meas5_z_psd.png" />
</p> </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>
<div id="orgcf2a406" class="figure"> <div id="orgf96e7c0" class="figure">
<p><img src="figs/meas5_y_psd.png" alt="meas5_y_psd.png" /> <p><img src="figs/meas5_y_psd.png" alt="meas5_y_psd.png" />
</p> </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> </div>
<p> <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. 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> </p>
<div class="org-src-container"> <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>
<div id="org4a54f35" class="figure"> <div id="orgd1bec89" class="figure">
<p><img src="figs/meas5_tf.png" alt="meas5_tf.png" /> <p><img src="figs/meas5_tf.png" alt="meas5_tf.png" />
</p> </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>
<div class="org-src-container"> <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>
<div id="orge7213d2" class="figure"> <div id="org4f5ea21" class="figure">
<p><img src="figs/meas5_coh.png" alt="meas5_coh.png" /> <p><img src="figs/meas5_coh.png" alt="meas5_coh.png" />
</p> </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>
<div class="important"> <div class="important">
@ -984,7 +1165,7 @@ But the coherence is not good above 20Hz, so it is difficult to estimate resonan
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Thomas Dehaeze</p> <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> <p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

View File

@ -23,25 +23,22 @@
[[../index.org][Back to main page]]. [[../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 #+name: fig:setup_picture
#+caption: Picture of the setup for the measurement #+caption: Picture of the setup for the measurement
#+attr_latex: :scale 1
[[file:./figs/setup_picture.png]] [[file:./figs/setup_picture.png]]
Sensors: The sensor used are 3 L-4C geophones ([[file:../actuators-sensors/index.org::*L-4C][Documentation]]).
- 3 L-4C ([[file:../actuators-sensors/index.org::*L-4C][Documentation]]) [[file:~/MEGA/These/Measurements/actuators-sensors/index.org::tab:L4C][table]]
Each motor are turn off and then on. 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. The goal is to see what noise is injected in the system due to the regulation loop of each stage.
* Importation of the data * Importation of the data
#+begin_src matlab :exports none :results silent
<<matlab-init>>
#+end_src
First, load all the measurement files: First, load all the measurement files:
#+begin_src matlab :exports code :results silent #+begin_src matlab :exports code :results silent
meas = {}; 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 | | 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: 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 #+begin_src matlab :results silent
meas1_z = (meas{1}.Track1+meas{1}.Track2)/2; meas1_z = (meas{1}.Track1+meas{1}.Track2)/2;
meas1_tilt = (meas{1}.Track1-meas{1}.Track2)/2; meas1_tilt = (meas{1}.Track1-meas{1}.Track2)/2;
meas{1}.Track1 = meas1_z; meas{1}.Track1 = meas1_z;
meas{1}.Track1_Y_Magnitude = 'Meter / second'; meas{1}.Track1_Y_Magnitude = 'Meter / second';
meas{1}.Track1_Name = 'Ry Z'; 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'; meas{2}.Track2_Name = 'Ry Tilt';
#+end_src #+end_src
* Variables for analysis * Normalization
We define the sampling frequency and the time vectors for the plots. 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 Measurements will be normalized by the inverse of this transfer function in order to go from voltage measurement to velocity measurement.
Fs = 256; % [Hz]
dt = 1/(Fs); #+begin_src matlab :results none
t1 = dt*[1:length(meas{1}.Track1)]; L4C_w0 = 2*pi; % [rad/s]
t2 = dt*[1:length(meas{2}.Track1)]; L4C_ksi = 0.28;
t3 = dt*[1:length(meas{3}.Track1)]; L4C_G0 = 276.8; % [V/(m/s)]
t4 = dt*[1:length(meas{4}.Track1)]; L4C_G = L4C_G0*(s/L4C_w0)^2/((s/L4C_w0)^2 + 2*L4C_ksi*(s/L4C_w0) + 1);
t5 = dt*[1:length(meas{5}.Track1)];
#+end_src #+end_src
For the frequency analysis, we define the frequency limits for the plot. #+begin_src matlab :results none :exports none
#+begin_src matlab :exports code :results silent freqs = logspace(-2, 2, 1000);
fmin = 1; % [Hz]
fmax = 100; % [Hz] 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 #+end_src
Then we define the windows that will be used to average the results. #+NAME: fig:L4C_bode_plot
#+begin_src matlab :exports code :results silent #+HEADER: :tangle no :exports results :results raw :noweb yes
psd_window = hanning(2*fmin/dt); #+begin_src matlab :var filepath="figs/L4C_bode_plot.pdf" :var figsize="wide-tall" :post pdf2svg(file=*this*, ext="png")
<<plt-matlab>>
#+end_src #+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 * Measurement 1 - Effect of Ty stage
The configuration for this measurement is shown table [[tab:conf_meas1]]. The configuration for this measurement is shown table [[tab:conf_meas1]].
#+CAPTION: Stages configuration - Measurement 1 #+CAPTION: Stages configuration - Measurement 1
#+NAME: tab:conf_meas1 #+NAME: tab:conf_meas1
| Time | 0-309 | 309-end | | Time | 0-309 | 309-end |
|------+-------+---------| |----------+-------+---------|
| Ty | OFF | ON | | 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]]). 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; 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)), (1/276.8).*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)), (1/276.8).*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}.Track3(ceil(300/dt):ceil(340/dt)));
hold off; hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]'); xlabel('Time [s]'); ylabel('Velocity [m/s]');
legend({meas{1}.Track1_Name, meas{1}.Track2_Name, meas{1}.Track3_Name}, 'Location', 'northeast') 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. 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 #+begin_src matlab :exports code :results silent
tdisp = t1(ceil(300/dt):ceil(340/dt)); 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 #+end_src
Then we plot the position with respect to time (figure [[fig:meas1_disp]]). 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. We when compute the power spectral density of each measurement before and after turning on the stage.
#+begin_src matlab :exports code :results silent #+begin_src matlab :exports code :results silent
[pxx111, f111] = pwelch(meas{1}.Track1(1:ceil(300/dt)), psd_window, [], [], Fs); [pxx111, f11] = pwelch(meas{1}.Track1(1:ceil(300/dt)), psd_window, [], [], Fs);
[pxx112, f112] = pwelch(meas{1}.Track1(ceil(350/dt):end), 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); [pxx121, ~] = pwelch(meas{1}.Track2(1:ceil(300/dt)), psd_window, [], [], Fs);
[pxx122, f122] = pwelch(meas{1}.Track2(ceil(350/dt):end), 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); [pxx131, ~] = pwelch(meas{1}.Track3(1:ceil(300/dt)), psd_window, [], [], Fs);
[pxx132, f132] = pwelch(meas{1}.Track3(ceil(350/dt):end), psd_window, [], [], Fs); [pxx132, ~] = pwelch(meas{1}.Track3(ceil(350/dt):end), psd_window, [], [], Fs);
#+end_src #+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]]). 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f111, sqrt(pxx111)); plot(f11, sqrt(pxx111)./abs(squeeze(freqresp(L4C_G, f11, 'Hz'))));
plot(f112, sqrt(pxx112)); plot(f12, sqrt(pxx112)./abs(squeeze(freqresp(L4C_G, f12, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f121, sqrt(pxx121)); plot(f11, sqrt(pxx121)./abs(squeeze(freqresp(L4C_G, f11, 'Hz'))));
plot(f122, sqrt(pxx122)); plot(f12, sqrt(pxx122)./abs(squeeze(freqresp(L4C_G, f12, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f131, sqrt(pxx131)); plot(f11, sqrt(pxx131)./abs(squeeze(freqresp(L4C_G, f11, 'Hz'))));
plot(f132, sqrt(pxx132)); plot(f12, sqrt(pxx132)./abs(squeeze(freqresp(L4C_G, f12, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+end_important
* Measurement 2 - Effect of Ry stage * Measurement 2 - Effect of Ry stage
The tilt stage is turned ON at around 326 seconds (table [[tab:conf_meas2]]). The tilt stage is turned ON at around 326 seconds (table [[tab:conf_meas2]]).
#+CAPTION: Stages configuration - Measurement 2 #+CAPTION: Stages configuration - Measurement 2
#+NAME: tab:conf_meas2 #+NAME: tab:conf_meas2
| Time | 0-326 | 326-end | | Time | 0-326 | 326-end |
|------+-------+---------| |----------+-------+---------|
| Tilt | OFF | ON | | 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. 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 #+begin_src matlab :exports results :results silent
figure; figure;
hold on; 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)), (1/276.8).*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)), (1/276.8).*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}.Track2(ceil(300/dt):ceil(350/dt)));
hold off; hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]'); xlabel('Time [s]'); ylabel('Velocity [m/s]');
legend({meas{2}.Track1_Name, meas{2}.Track2_Name, meas{2}.Track3_Name}, 'Location', 'northeast') legend({meas{2}.Track1_Name, meas{2}.Track2_Name, meas{2}.Track3_Name}, 'Location', 'northeast')
xlim([300, 350]);
#+end_src #+end_src
#+NAME: fig:meas2 #+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]] ). 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 #+begin_src matlab :exports code :results silent
[pxx211, f211] = pwelch(meas{2}.Track1(1:ceil(326/dt)), psd_window, [], [], Fs); [pxx211, f21] = pwelch(meas{2}.Track1(1:ceil(326/dt)), psd_window, [], [], Fs);
[pxx212, f212] = pwelch(meas{2}.Track1(ceil(326/dt):end), 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); [pxx221, ~] = pwelch(meas{2}.Track2(1:ceil(326/dt)), psd_window, [], [], Fs);
[pxx222, f222] = pwelch(meas{2}.Track2(ceil(326/dt):end), 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); [pxx231, ~] = pwelch(meas{2}.Track3(1:ceil(326/dt)), psd_window, [], [], Fs);
[pxx232, f232] = pwelch(meas{2}.Track3(ceil(326/dt):end), psd_window, [], [], Fs); [pxx232, ~] = pwelch(meas{2}.Track3(ceil(326/dt):end), psd_window, [], [], Fs);
#+end_src #+end_src
#+begin_src matlab :exports none :results silent #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f211, sqrt(pxx211)); plot(f21, sqrt(pxx211)./abs(squeeze(freqresp(L4C_G, f21, 'Hz'))));
plot(f212, sqrt(pxx212)); plot(f22, sqrt(pxx212)./abs(squeeze(freqresp(L4C_G, f22, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f221, sqrt(pxx221)); plot(f21, sqrt(pxx221)./abs(squeeze(freqresp(L4C_G, f21, 'Hz'))));
plot(f222, sqrt(pxx222)); plot(f22, sqrt(pxx222)./abs(squeeze(freqresp(L4C_G, f22, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f231, sqrt(pxx231)); plot(f21, sqrt(pxx231)./abs(squeeze(freqresp(L4C_G, f21, 'Hz'))));
plot(f232, sqrt(pxx232)); plot(f22, sqrt(pxx232)./abs(squeeze(freqresp(L4C_G, f22, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+end_important
* Measurement 3 - Effect of the Hexapod * Measurement 3 - Effect of the Hexapod
The hexapod is turned off after 406 seconds (table [[tab:conf_meas3]]). The hexapod is turned off after 406 seconds (table [[tab:conf_meas3]]).
#+CAPTION: Stages configuration - Measurement 3 #+CAPTION: Stages configuration - Measurement 3
#+NAME: tab:conf_meas3 #+NAME: tab:conf_meas3
| Time | 0-406 | 406-end | | Time | 0-406 | 406-end |
|------+-------+---------| |----------+-------+---------|
| Tilt | ON | ON | | Ty | OFF | OFF |
| Hexa | ON | OFF | | Ry | *ON* | *ON* |
| SlipRing | OFF | OFF |
| Spindle | OFF | OFF |
| Hexa | *ON* | OFF |
The time domain result is shown figure [[fig:meas3]]. The time domain result is shown figure [[fig:meas3]].
#+begin_src matlab :exports results :results silent #+begin_src matlab :exports results :results silent
figure; figure;
hold on; 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)), (1/276.8).*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)), (1/276.8).*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}.Track3(ceil(380/dt):ceil(420/dt)));
hold off; hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]'); xlabel('Time [s]'); ylabel('Velocity [m/s]');
legend({meas{3}.Track1_Name, meas{3}.Track2_Name, meas{3}.Track3_Name}, 'Location', 'northeast') 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]]. 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 #+begin_src matlab :exports code :results silent
[pxx311, f311] = pwelch(meas{3}.Track1(1:ceil(400/dt)), psd_window, [], [], Fs); [pxx311, f31] = pwelch(meas{3}.Track1(1:ceil(400/dt)), psd_window, [], [], Fs);
[pxx312, f312] = pwelch(meas{3}.Track1(ceil(420/dt):end), 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); [pxx321, ~] = pwelch(meas{3}.Track2(1:ceil(400/dt)), psd_window, [], [], Fs);
[pxx322, f322] = pwelch(meas{3}.Track2(ceil(420/dt):end), 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); [pxx331, ~] = pwelch(meas{3}.Track3(1:ceil(400/dt)), psd_window, [], [], Fs);
[pxx332, f332] = pwelch(meas{3}.Track3(ceil(420/dt):end), psd_window, [], [], Fs); [pxx332, ~] = pwelch(meas{3}.Track3(ceil(420/dt):end), psd_window, [], [], Fs);
#+end_src #+end_src
#+begin_src matlab :exports none :results silent #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f311, sqrt(pxx311)); plot(f31, sqrt(pxx311)./abs(squeeze(freqresp(L4C_G, f31, 'Hz'))));
plot(f312, sqrt(pxx312)); plot(f32, sqrt(pxx312)./abs(squeeze(freqresp(L4C_G, f32, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f321, sqrt(pxx321)); plot(f31, sqrt(pxx321)./abs(squeeze(freqresp(L4C_G, f31, 'Hz'))));
plot(f322, sqrt(pxx322)); plot(f32, sqrt(pxx322)./abs(squeeze(freqresp(L4C_G, f32, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f331, sqrt(pxx331)); plot(f31, sqrt(pxx331)./abs(squeeze(freqresp(L4C_G, f31, 'Hz'))));
plot(f332, sqrt(pxx332)); plot(f32, sqrt(pxx332)./abs(squeeze(freqresp(L4C_G, f32, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+end_important
* Measurement 4 - Effect of the Splip-Ring and Spindle * 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]]. 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 #+CAPTION: Stages configuration - Measurement 4
#+NAME: tab:conf_meas4 #+NAME: tab:conf_meas4
| Time | 0-300 | 300-620 | 620-end | | 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 | | Hexa | OFF | OFF | OFF |
| Spindle | OFF | OFF | ON |
#+begin_src matlab :exports results :results silent #+begin_src matlab :exports results :results silent
figure; figure;
hold on; hold on;
plot(t4, meas{4}.Track1); plot(t4, (1/276.8).*meas{4}.Track1);
plot(t4, meas{4}.Track2); plot(t4, (1/276.8).*meas{4}.Track2);
plot(t4, meas{4}.Track3); plot(t4, (1/276.8).*meas{4}.Track3);
hold off; hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]'); xlabel('Time [s]'); ylabel('Velocity [m/s]');
legend({meas{4}.Track1_Name, meas{4}.Track2_Name, meas{4}.Track3_Name}, 'Location', 'southwest') 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. The PSD of each track are computed using the code below.
#+begin_src matlab :exports none :results silent #+begin_src matlab :exports none :results silent
[pxx411, f411] = pwelch(meas{4}.Track1(1:ceil(280/dt)), psd_window, [], [], Fs); [pxx411, f41] = 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); [pxx412, f42] = 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); [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); [pxx421, ~] = 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); [pxx422, ~] = 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); [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); [pxx431, ~] = 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); [pxx432, ~] = 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); [pxx433, ~] = pwelch(meas{4}.Track3(ceil(640/dt):end), psd_window, [], [], Fs);
#+end_src #+end_src
#+begin_src matlab :exports none :results silent #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f411, sqrt(pxx411)); plot(f41, sqrt(pxx411)./abs(squeeze(freqresp(L4C_G, f41, 'Hz'))));
plot(f412, sqrt(pxx412)); plot(f42, sqrt(pxx412)./abs(squeeze(freqresp(L4C_G, f42, 'Hz'))));
plot(f413, sqrt(pxx413)); plot(f43, sqrt(pxx413)./abs(squeeze(freqresp(L4C_G, f43, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f421, sqrt(pxx421)); plot(f41, sqrt(pxx421)./abs(squeeze(freqresp(L4C_G, f41, 'Hz'))));
plot(f422, sqrt(pxx422)); plot(f42, sqrt(pxx422)./abs(squeeze(freqresp(L4C_G, f42, 'Hz'))));
plot(f423, sqrt(pxx423)); plot(f43, sqrt(pxx423)./abs(squeeze(freqresp(L4C_G, f43, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f431, sqrt(pxx431)); plot(f41, sqrt(pxx431)./abs(squeeze(freqresp(L4C_G, f41, 'Hz'))));
plot(f432, sqrt(pxx432)); plot(f42, sqrt(pxx432)./abs(squeeze(freqresp(L4C_G, f42, 'Hz'))));
plot(f433, sqrt(pxx433)); plot(f43, sqrt(pxx433)./abs(squeeze(freqresp(L4C_G, f43, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports results :results silent
figure; figure;
hold on; hold on;
plot(t5, meas{5}.Track1); plot(t5, (1/276.8).*meas{5}.Track1);
plot(t5, meas{5}.Track2); plot(t5, (1/276.8).*meas{5}.Track2);
plot(t5, meas{5}.Track3); plot(t5, (1/276.8).*meas{5}.Track3);
plot(t5, meas{5}.Track4); plot(t5, (1/276.8).*meas{5}.Track4);
hold off; hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]'); 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') 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f51, sqrt(pxx51)); plot(f51, sqrt(pxx51)./abs(squeeze(freqresp(L4C_G, f51, 'Hz'))));
plot(f52, sqrt(pxx52)); plot(f52, sqrt(pxx52)./abs(squeeze(freqresp(L4C_G, f52, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); 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 #+begin_src matlab :exports none :results silent
figure; figure;
hold on; hold on;
plot(f53, sqrt(pxx53)); plot(f53, sqrt(pxx53)./abs(squeeze(freqresp(L4C_G, f53, 'Hz'))));
plot(f54, sqrt(pxx54)); plot(f54, sqrt(pxx54)./abs(squeeze(freqresp(L4C_G, f54, 'Hz'))));
xlim([fmin, fmax]); xlim([fmin, fmax]);
xticks([1, 10, 100]); xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');