<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <head> <!-- 2019-04-02 mar. 10:39 --> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>Measurement Analysis</title> <meta name="generator" content="Org mode" /> <meta name="author" content="Thomas Dehaeze" /> <style type="text/css"> <!--/*--><![CDATA[/*><!--*/ .title { text-align: center; margin-bottom: .2em; } .subtitle { text-align: center; font-size: medium; font-weight: bold; margin-top:0; } .todo { font-family: monospace; color: red; } .done { font-family: monospace; color: green; } .priority { font-family: monospace; color: orange; } .tag { background-color: #eee; font-family: monospace; padding: 2px; font-size: 80%; font-weight: normal; } .timestamp { color: #bebebe; } .timestamp-kwd { color: #5f9ea0; } .org-right { margin-left: auto; margin-right: 0px; text-align: right; } .org-left { margin-left: 0px; margin-right: auto; text-align: left; } .org-center { margin-left: auto; margin-right: auto; text-align: center; } .underline { text-decoration: underline; } #postamble p, #preamble p { font-size: 90%; margin: .2em; } p.verse { margin-left: 3%; } pre { border: 1px solid #ccc; box-shadow: 3px 3px 3px #eee; padding: 8pt; font-family: monospace; overflow: auto; margin: 1.2em; } pre.src { position: relative; overflow: visible; padding-top: 1.2em; } pre.src:before { display: none; position: absolute; background-color: white; top: -10px; right: 10px; padding: 3px; border: 1px solid black; } pre.src:hover:before { display: inline;} /* Languages per Org manual */ pre.src-asymptote:before { content: 'Asymptote'; } pre.src-awk:before { content: 'Awk'; } pre.src-C:before { content: 'C'; } /* pre.src-C++ doesn't work in CSS */ pre.src-clojure:before { content: 'Clojure'; } pre.src-css:before { content: 'CSS'; } pre.src-D:before { content: 'D'; } pre.src-ditaa:before { content: 'ditaa'; } pre.src-dot:before { content: 'Graphviz'; } pre.src-calc:before { content: 'Emacs Calc'; } pre.src-emacs-lisp:before { content: 'Emacs Lisp'; } pre.src-fortran:before { content: 'Fortran'; } pre.src-gnuplot:before { content: 'gnuplot'; } pre.src-haskell:before { content: 'Haskell'; } pre.src-hledger:before { content: 'hledger'; } pre.src-java:before { content: 'Java'; } pre.src-js:before { content: 'Javascript'; } pre.src-latex:before { content: 'LaTeX'; } pre.src-ledger:before { content: 'Ledger'; } pre.src-lisp:before { content: 'Lisp'; } pre.src-lilypond:before { content: 'Lilypond'; } pre.src-lua:before { content: 'Lua'; } pre.src-matlab:before { content: 'MATLAB'; } pre.src-mscgen:before { content: 'Mscgen'; } pre.src-ocaml:before { content: 'Objective Caml'; } pre.src-octave:before { content: 'Octave'; } pre.src-org:before { content: 'Org mode'; } pre.src-oz:before { content: 'OZ'; } pre.src-plantuml:before { content: 'Plantuml'; } pre.src-processing:before { content: 'Processing.js'; } pre.src-python:before { content: 'Python'; } pre.src-R:before { content: 'R'; } pre.src-ruby:before { content: 'Ruby'; } pre.src-sass:before { content: 'Sass'; } pre.src-scheme:before { content: 'Scheme'; } pre.src-screen:before { content: 'Gnu Screen'; } pre.src-sed:before { content: 'Sed'; } pre.src-sh:before { content: 'shell'; } pre.src-sql:before { content: 'SQL'; } pre.src-sqlite:before { content: 'SQLite'; } /* additional languages in org.el's org-babel-load-languages alist */ pre.src-forth:before { content: 'Forth'; } pre.src-io:before { content: 'IO'; } pre.src-J:before { content: 'J'; } pre.src-makefile:before { content: 'Makefile'; } pre.src-maxima:before { content: 'Maxima'; } pre.src-perl:before { content: 'Perl'; } pre.src-picolisp:before { content: 'Pico Lisp'; } pre.src-scala:before { content: 'Scala'; } pre.src-shell:before { content: 'Shell Script'; } pre.src-ebnf2ps:before { content: 'ebfn2ps'; } /* additional language identifiers per "defun org-babel-execute" in ob-*.el */ pre.src-cpp:before { content: 'C++'; } pre.src-abc:before { content: 'ABC'; } pre.src-coq:before { content: 'Coq'; } pre.src-groovy:before { content: 'Groovy'; } /* additional language identifiers from org-babel-shell-names in ob-shell.el: ob-shell is the only babel language using a lambda to put the execution function name together. */ pre.src-bash:before { content: 'bash'; } pre.src-csh:before { content: 'csh'; } pre.src-ash:before { content: 'ash'; } pre.src-dash:before { content: 'dash'; } pre.src-ksh:before { content: 'ksh'; } pre.src-mksh:before { content: 'mksh'; } pre.src-posh:before { content: 'posh'; } /* Additional Emacs modes also supported by the LaTeX listings package */ pre.src-ada:before { content: 'Ada'; } pre.src-asm:before { content: 'Assembler'; } pre.src-caml:before { content: 'Caml'; } pre.src-delphi:before { content: 'Delphi'; } pre.src-html:before { content: 'HTML'; } pre.src-idl:before { content: 'IDL'; } pre.src-mercury:before { content: 'Mercury'; } pre.src-metapost:before { content: 'MetaPost'; } pre.src-modula-2:before { content: 'Modula-2'; } pre.src-pascal:before { content: 'Pascal'; } pre.src-ps:before { content: 'PostScript'; } pre.src-prolog:before { content: 'Prolog'; } pre.src-simula:before { content: 'Simula'; } pre.src-tcl:before { content: 'tcl'; } pre.src-tex:before { content: 'TeX'; } pre.src-plain-tex:before { content: 'Plain TeX'; } pre.src-verilog:before { content: 'Verilog'; } pre.src-vhdl:before { content: 'VHDL'; } pre.src-xml:before { content: 'XML'; } pre.src-nxml:before { content: 'XML'; } /* add a generic configuration mode; LaTeX export needs an additional (add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */ pre.src-conf:before { content: 'Configuration File'; } table { border-collapse:collapse; } caption.t-above { caption-side: top; } caption.t-bottom { caption-side: bottom; } td, th { vertical-align:top; } th.org-right { text-align: center; } th.org-left { text-align: center; } th.org-center { text-align: center; } td.org-right { text-align: right; } td.org-left { text-align: left; } td.org-center { text-align: center; } dt { font-weight: bold; } .footpara { display: inline; } .footdef { margin-bottom: 1em; } .figure { padding: 1em; } .figure p { text-align: center; } .equation-container { display: table; text-align: center; width: 100%; } .equation { vertical-align: middle; } .equation-label { display: table-cell; text-align: right; vertical-align: middle; } .inlinetask { padding: 10px; border: 2px solid gray; margin: 10px; background: #ffffcc; } #org-div-home-and-up { text-align: right; font-size: 70%; white-space: nowrap; } textarea { overflow-x: auto; } .linenr { font-size: smaller } .code-highlighted { background-color: #ffff00; } .org-info-js_info-navigation { border-style: none; } #org-info-js_console-label { font-size: 10px; font-weight: bold; white-space: nowrap; } .org-info-js_search-highlight { background-color: #ffff00; color: #000000; font-weight: bold; } .org-svg { width: 90%; } /*]]>*/--> </style> <link rel="stylesheet" type="text/css" href="../css/htmlize.css"/> <link rel="stylesheet" type="text/css" href="../css/readtheorg.css"/> <script src="../js/jquery.min.js"></script> <script src="../js/bootstrap.min.js"></script> <script src="../js/jquery.stickytableheaders.min.js"></script> <script src="../js/readtheorg.js"></script> <script type="text/javascript"> /* @licstart The following is the entire license notice for the JavaScript code in this tag. Copyright (C) 2012-2019 Free Software Foundation, Inc. The JavaScript code in this tag is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License (GNU GPL) as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. The code is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU GPL for more details. As additional permission under GNU GPL version 3 section 7, you may distribute non-source (e.g., minimized or compacted) forms of that code without the copy of the GNU GPL normally required by section 4, provided you include this license notice and a URL through which recipients can access the Corresponding Source. @licend The above is the entire license notice for the JavaScript code in this tag. */ <!--/*--><![CDATA[/*><!--*/ function CodeHighlightOn(elem, id) { var target = document.getElementById(id); if(null != target) { elem.cacheClassElem = elem.className; elem.cacheClassTarget = target.className; target.className = "code-highlighted"; elem.className = "code-highlighted"; } } function CodeHighlightOff(elem, id) { var target = document.getElementById(id); if(elem.cacheClassElem) elem.className = elem.cacheClassElem; if(elem.cacheClassTarget) target.className = elem.cacheClassTarget; } /*]]>*///--> </script> </head> <body> <div id="content"> <h1 class="title">Measurement Analysis</h1> <div id="table-of-contents"> <h2>Table of Contents</h2> <div id="text-table-of-contents"> <ul> <li><a href="#orga57c824">1. Measurement Description</a></li> <li><a href="#orgac83bb1">2. Importation of the data</a></li> <li><a href="#orge44c773">3. Variables for analysis</a></li> <li><a href="#orgcb0a2db">4. Coherence between the two vertical geophones on the Tilt Stage</a></li> <li><a href="#orgc619b39">5. Data Post Processing</a></li> <li><a href="#org03ef418">6. Normalization</a></li> <li><a href="#org8583637">7. Measurement 1 - Effect of Ty stage</a></li> <li><a href="#org47192a7">8. Measurement 2 - Effect of Ry stage</a></li> <li><a href="#org0c3a1d4">9. Measurement 3 - Effect of the Hexapod</a></li> <li><a href="#org1529580">10. Measurement 4 - Effect of the Splip-Ring and Spindle</a></li> <li><a href="#orga767d61">11. Measurement 5 - Transmission from ground to marble</a></li> </ul> </div> </div> <p> <a href="../index.html">Back to main page</a>. </p> <div id="outline-container-orga57c824" class="outline-2"> <h2 id="orga57c824"><span class="section-number-2">1</span> Measurement Description</h2> <div class="outline-text-2" id="text-1"> <div id="orgc56bc67" class="figure"> <p><img src="./figs/setup_picture.png" alt="setup_picture.png" /> </p> <p><span class="figure-number">Figure 1: </span>Picture of the setup for the measurement</p> </div> <p> The sensor used are 3 L-4C geophones (<a href="../actuators-sensors/index.html#MissingReference">Documentation</a>). </p> <p> Each motor are turn off and then on. </p> <p> The goal is to see what noise is injected in the system due to the regulation loop of each stage. </p> </div> </div> <div id="outline-container-orgac83bb1" class="outline-2"> <h2 id="orgac83bb1"><span class="section-number-2">2</span> Importation of the data</h2> <div class="outline-text-2" id="text-2"> <p> First, load all the measurement files: </p> <div class="org-src-container"> <pre class="src src-matlab">meas = <span class="org-rainbow-delimiters-depth-1">{}</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span> = load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'./mat/Measurement1.mat'</span><span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span> = load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'./mat/Measurement2.mat'</span><span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-1">}</span> = load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'./mat/Measurement3.mat'</span><span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-1">}</span> = load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'./mat/Measurement4.mat'</span><span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-1">}</span> = load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'./mat/Measurement5.mat'</span><span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> <p> Change the track name for measurements 3 and 4. </p> <div class="org-src-container"> <pre class="src src-matlab">meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_Name = 'Input <span class="org-highlight-numbers-number">1</span><span class="org-type">:</span> Hexa Z'; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_Name = 'Input <span class="org-highlight-numbers-number">1</span><span class="org-type">:</span> Hexa Z'; </pre> </div> <p> For the measurements 1 to 4, the measurement channels are shown table <a href="#org7e4418b">1</a>. </p> <table id="org7e4418b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <caption class="t-above"><span class="table-number">Table 1:</span> Channels for measurements 1 to 4</caption> <colgroup> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> </colgroup> <thead> <tr> <th scope="col" class="org-left"> </th> <th scope="col" class="org-left">Channel 1</th> <th scope="col" class="org-left">Channel 2</th> <th scope="col" class="org-left">Channel 3</th> </tr> </thead> <tbody> <tr> <td class="org-left">Meas. 1</td> <td class="org-left">Input 1: tilt1 Z</td> <td class="org-left">Input 2: tilt2 Z</td> <td class="org-left">Input 3: Ty Y</td> </tr> <tr> <td class="org-left">Meas. 2</td> <td class="org-left">Input 1: tilt1 Z</td> <td class="org-left">Input 2: tilt2 Z</td> <td class="org-left">Input 3: Ty Y</td> </tr> <tr> <td class="org-left">Meas. 3</td> <td class="org-left">Input 1: Hexa Z</td> <td class="org-left">Input 2: tilt2 Z</td> <td class="org-left">Input 3: Ty Y</td> </tr> <tr> <td class="org-left">Meas. 4</td> <td class="org-left">Input 1: Hexa Z</td> <td class="org-left">Input 2: tilt2 Z</td> <td class="org-left">Input 3: Ty Y</td> </tr> </tbody> </table> <p> For the measurement 5, the channels are shown table <a href="#org00892de">2</a>. </p> <table id="org00892de" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <caption class="t-above"><span class="table-number">Table 2:</span> Channels for measurement 5</caption> <colgroup> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> </colgroup> <thead> <tr> <th scope="col" class="org-left"> </th> <th scope="col" class="org-left">Channel 1</th> <th scope="col" class="org-left">Channel 2</th> <th scope="col" class="org-left">Channel 3</th> <th scope="col" class="org-left">Channel 4</th> </tr> </thead> <tbody> <tr> <td class="org-left">Meas. 5</td> <td class="org-left">Input 1: Floor Z</td> <td class="org-left">Input 2: Marble Z</td> <td class="org-left">Input 3: Floor Y</td> <td class="org-left">Input 4: Marble Y</td> </tr> </tbody> </table> </div> </div> <div id="outline-container-orge44c773" class="outline-2"> <h2 id="orge44c773"><span class="section-number-2">3</span> Variables for analysis</h2> <div class="outline-text-2" id="text-3"> <p> We define the sampling frequency and the time vectors for the plots. </p> <div class="org-src-container"> <pre class="src src-matlab">Fs = <span class="org-highlight-numbers-number">256</span>; <span class="org-comment">% [Hz]</span> dt = <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-1">(</span>Fs<span class="org-rainbow-delimiters-depth-1">)</span>; t1 = dt<span class="org-type">*</span><span class="org-rainbow-delimiters-depth-1">[</span><span class="org-highlight-numbers-number">0</span><span class="org-type">:</span>length<span class="org-rainbow-delimiters-depth-2">(</span>meas<span class="org-rainbow-delimiters-depth-3">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">-</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">]</span>; t2 = dt<span class="org-type">*</span><span class="org-rainbow-delimiters-depth-1">[</span><span class="org-highlight-numbers-number">0</span><span class="org-type">:</span>length<span class="org-rainbow-delimiters-depth-2">(</span>meas<span class="org-rainbow-delimiters-depth-3">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">-</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">]</span>; t3 = dt<span class="org-type">*</span><span class="org-rainbow-delimiters-depth-1">[</span><span class="org-highlight-numbers-number">0</span><span class="org-type">:</span>length<span class="org-rainbow-delimiters-depth-2">(</span>meas<span class="org-rainbow-delimiters-depth-3">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-3">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">-</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">]</span>; t4 = dt<span class="org-type">*</span><span class="org-rainbow-delimiters-depth-1">[</span><span class="org-highlight-numbers-number">0</span><span class="org-type">:</span>length<span class="org-rainbow-delimiters-depth-2">(</span>meas<span class="org-rainbow-delimiters-depth-3">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-3">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">-</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">]</span>; t5 = dt<span class="org-type">*</span><span class="org-rainbow-delimiters-depth-1">[</span><span class="org-highlight-numbers-number">0</span><span class="org-type">:</span>length<span class="org-rainbow-delimiters-depth-2">(</span>meas<span class="org-rainbow-delimiters-depth-3">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-3">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">-</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">]</span>; </pre> </div> <p> For the frequency analysis, we define the frequency limits for the plot. </p> <div class="org-src-container"> <pre class="src src-matlab">fmin = <span class="org-highlight-numbers-number">1</span>; <span class="org-comment">% [Hz]</span> fmax = <span class="org-highlight-numbers-number">100</span>; <span class="org-comment">% [Hz]</span> </pre> </div> <p> Then we define the windows that will be used to average the results. </p> <div class="org-src-container"> <pre class="src src-matlab">psd_window = hanning<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-highlight-numbers-number">2</span><span class="org-type">*</span>fmin<span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> </div> </div> <div id="outline-container-orgcb0a2db" class="outline-2"> <h2 id="orgcb0a2db"><span class="section-number-2">4</span> Coherence between the two vertical geophones on the Tilt Stage</h2> <div class="outline-text-2" id="text-4"> <p> We first compute the coherence between the two geophones located on the tilt stage. The result is shown on figure <a href="#org3d4d6fd">2</a>. </p> <div class="org-src-container"> <pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>coh, f<span class="org-rainbow-delimiters-depth-1">]</span> = mscohere<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> <div id="org3d4d6fd" 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="#org62100a4">3</a>). </p> <div class="org-src-container"> <pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>tf23, f<span class="org-rainbow-delimiters-depth-1">]</span> = tfestimate<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> <div id="org62100a4" 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-orgc619b39" class="outline-2"> <h2 id="orgc619b39"><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> <div class="org-src-container"> <pre class="src src-matlab">meas1_z = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-type">+</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">2</span>; meas1_tilt = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-type">-</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">2</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1 = meas1_z; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_Y_Magnitude = <span class="org-string">'Meter / second'</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_Name = <span class="org-string">'Ry Z'</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2 = meas1_tilt; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2_Y_Magnitude = <span class="org-string">'Rad / second'</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2_Name = <span class="org-string">'Ry Tilt'</span>; meas2_z = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-type">+</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">2</span>; meas2_tilt = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-type">-</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">2</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1 = meas2_z; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_Y_Magnitude = <span class="org-string">'Meter / second'</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_Name = <span class="org-string">'Ry Z'</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2 = meas2_tilt; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2_Y_Magnitude = <span class="org-string">'Rad / second'</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2_Name = <span class="org-string">'Ry Tilt'</span>; </pre> </div> </div> </div> <div id="outline-container-org03ef418" class="outline-2"> <h2 id="org03ef418"><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="#org47ba141">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 class="org-highlight-numbers-number">2</span><span class="org-type">*</span><span class="org-constant">pi</span>; <span class="org-comment">% [rad/s]</span> L4C_ksi = <span class="org-highlight-numbers-number">0</span>.<span class="org-highlight-numbers-number">28</span>; L4C_G0 = <span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; <span class="org-comment">% [V/(m/s)]</span> [Omitted long matching line] </pre> </div> <div id="org47ba141" 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> <div class="org-src-container"> <pre class="src src-matlab">meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track4 = <span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track4<span class="org-rainbow-delimiters-depth-1">)</span><span class="org-type">./</span><span class="org-highlight-numbers-number">276</span>.<span class="org-highlight-numbers-number">8</span>; </pre> </div> <div class="org-src-container"> <pre class="src src-matlab">meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1, t1<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2, t1<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3, t1<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1, t2<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2, t2<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3, t2<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1, t3<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2, t3<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3, t3<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1, t4<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2, t4<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">4</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3, t4<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track1_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1, t5<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track2_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2, t5<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track3_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3, t5<span class="org-rainbow-delimiters-depth-1">)</span>; meas<span class="org-rainbow-delimiters-depth-1">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-1">}</span>.Track4_norm = lsim<span class="org-rainbow-delimiters-depth-1">(</span>inv<span class="org-rainbow-delimiters-depth-2">(</span>L4C_G<span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track4, t5<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> </div> </div> <div id="outline-container-org8583637" class="outline-2"> <h2 id="org8583637"><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="#orgc1f3234">3</a>. </p> <table id="orgc1f3234" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <caption class="t-above"><span class="table-number">Table 3:</span> Stages configuration - Measurement 1</caption> <colgroup> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> </colgroup> <thead> <tr> <th scope="col" class="org-left">Time</th> <th scope="col" class="org-left">0-309</th> <th scope="col" class="org-left">309-end</th> </tr> </thead> <tbody> <tr> <td class="org-left">Ty</td> <td class="org-left">OFF</td> <td class="org-left"><b>ON</b></td> </tr> <tr> <td class="org-left">Ry</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">SlipRing</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">Spindle</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">Hexa</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> </tbody> </table> <p> We then plot the measurements in time domain (figure <a href="#orgf931943">5</a>). </p> <div class="important"> <p> We observe strange behavior when the Ty stage is turned on. How can we explain that? </p> </div> <div id="orgf931943" class="figure"> <p><img src="figs/meas1.png" alt="meas1.png" /> </p> <p><span class="figure-number">Figure 5: </span>Time domain - measurement 1</p> </div> <p> 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 <code>cumtrapz</code> function. </p> <p> Then we plot the position with respect to time (figure <a href="#orgb6bceab">6</a>). </p> <div id="orgb6bceab" class="figure"> <p><img src="figs/meas1_disp.png" alt="meas1_disp.png" /> </p> <p><span class="figure-number">Figure 6: </span>Y displacement of the Ty stage</p> </div> <p> We when compute the power spectral density of each measurement before and after turning on the stage. </p> <div class="org-src-container"> <pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>pxx111, f11<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">:</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">300</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx112, f12<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">350</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">:</span>end<span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx121, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">:</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">300</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx122, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">350</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">:</span>end<span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx131, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">:</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">300</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx132, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">350</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">:</span>end<span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> <p> We finally plot the power spectral density of each track (figures <a href="#org767e453">7</a>, <a href="#org8cd1899">8</a>, <a href="#org3030170">9</a>). </p> <div id="org767e453" class="figure"> <p><img src="figs/meas1_ry_z_psd.png" alt="meas1_ry_z_psd.png" /> </p> <p><span class="figure-number">Figure 7: </span>PSD of the Z velocity of Ry stage - measurement 1</p> </div> <div id="org8cd1899" class="figure"> <p><img src="figs/meas1_ry_tilt_psd.png" alt="meas1_ry_tilt_psd.png" /> </p> <p><span class="figure-number">Figure 8: </span>PSD of the Rotation of Ry Stage - measurement 1</p> </div> <div id="org3030170" class="figure"> <p><img src="figs/meas1_ty_y_psd.png" alt="meas1_ty_y_psd.png" /> </p> <p><span class="figure-number">Figure 9: </span>PSD of the Ty velocity in the Y direction - measurement 1</p> </div> <div class="important"> <p> Turning on the Y-translation stage increases the velocity of the Ty stage in the Y direction and the rotation motion of the tilt stage: </p> <ul class="org-ul"> <li>at 20Hz</li> <li>at 40Hz</li> <li>between 80Hz and 90Hz</li> </ul> <p> It does not seems to have any effect on the Z motion of the tilt stage. </p> </div> </div> </div> <div id="outline-container-org47192a7" class="outline-2"> <h2 id="org47192a7"><span class="section-number-2">8</span> Measurement 2 - Effect of Ry stage</h2> <div class="outline-text-2" id="text-8"> <p> The tilt stage is turned ON at around 326 seconds (table <a href="#orgba0882e">4</a>). </p> <table id="orgba0882e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <caption class="t-above"><span class="table-number">Table 4:</span> Stages configuration - Measurement 2</caption> <colgroup> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> </colgroup> <thead> <tr> <th scope="col" class="org-left">Time</th> <th scope="col" class="org-left">0-326</th> <th scope="col" class="org-left">326-end</th> </tr> </thead> <tbody> <tr> <td class="org-left">Ty</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">Ry</td> <td class="org-left">OFF</td> <td class="org-left"><b>ON</b></td> </tr> <tr> <td class="org-left">SlipRing</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">Spindle</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">Hexa</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> </tbody> </table> <p> We plot the time domain (figure <a href="#org9bf6e90">10</a>) and we don't observe anything special in the time domain. </p> <div id="org9bf6e90" class="figure"> <p><img src="figs/meas2.png" alt="meas2.png" /> </p> <p><span class="figure-number">Figure 10: </span>Time domain - measurement 2</p> </div> <div id="org767f834" class="figure"> <p><img src="figs/meas2_disp.png" alt="meas2_disp.png" /> </p> <p><span class="figure-number">Figure 11: </span>Time domain - measurement 2</p> </div> <p> We compute the PSD of each track and we plot them (figures <a href="#org23fbfb4">12</a>, <a href="#org7a18c86">13</a> and <a href="#orgdcf33e8">14</a> ). </p> <div class="org-src-container"> <pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>pxx211, f21<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">:</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">326</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx212, f22<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">326</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">:</span>end<span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx221, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">:</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">326</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx222, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">326</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">:</span>end<span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx231, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">:</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">326</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx232, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">326</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">:</span>end<span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> <div id="org23fbfb4" class="figure"> <p><img src="figs/meas2_ry_z_psd.png" alt="meas2_ry_z_psd.png" /> </p> <p><span class="figure-number">Figure 12: </span>PSD of the Z velocity of Ry Stage - measurement 2</p> </div> <div id="org7a18c86" class="figure"> <p><img src="figs/meas2_ry_tilt_psd.png" alt="meas2_ry_tilt_psd.png" /> </p> <p><span class="figure-number">Figure 13: </span>PSD of the Rotation motion of Ry Stage - measurement 2</p> </div> <div id="orgdcf33e8" class="figure"> <p><img src="figs/meas2_ty_y_psd.png" alt="meas2_ty_y_psd.png" /> </p> <p><span class="figure-number">Figure 14: </span>PSD of the Ty velocity in the Y direction - measurement 2</p> </div> <div class="important"> <p> We observe no noticeable difference when the Tilt-stage is turned ON expect a small decrease of the Z motion of the tilt stage around 10Hz. </p> </div> </div> </div> <div id="outline-container-org0c3a1d4" class="outline-2"> <h2 id="org0c3a1d4"><span class="section-number-2">9</span> Measurement 3 - Effect of the Hexapod</h2> <div class="outline-text-2" id="text-9"> <p> The hexapod is turned off after 406 seconds (table <a href="#org8b4187d">5</a>). </p> <table id="org8b4187d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <caption class="t-above"><span class="table-number">Table 5:</span> Stages configuration - Measurement 3</caption> <colgroup> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> </colgroup> <thead> <tr> <th scope="col" class="org-left">Time</th> <th scope="col" class="org-left">0-406</th> <th scope="col" class="org-left">406-end</th> </tr> </thead> <tbody> <tr> <td class="org-left">Ty</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">Ry</td> <td class="org-left"><b>ON</b></td> <td class="org-left"><b>ON</b></td> </tr> <tr> <td class="org-left">SlipRing</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">Spindle</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">Hexa</td> <td class="org-left"><b>ON</b></td> <td class="org-left">OFF</td> </tr> </tbody> </table> <p> The time domain result is shown figure <a href="#org08fc17d">15</a>. </p> <div id="org08fc17d" class="figure"> <p><img src="figs/meas3.png" alt="meas3.png" /> </p> <p><span class="figure-number">Figure 15: </span>Time domain - measurement 3</p> </div> <div id="org4ae7ca4" class="figure"> <p><img src="figs/meas3_disp.png" alt="meas3_disp.png" /> </p> <p><span class="figure-number">Figure 16: </span>Time domain - measurement 3</p> </div> <p> We then compute the PSD of each track before and after turning off the hexapod and plot the results in the figures <a href="#org0c4287e">17</a>, <a href="#org899151a">18</a> and <a href="#org0fc8e31">19</a>. </p> <div class="org-src-container"> <pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>pxx311, f31<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">:</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">400</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx312, f32<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">420</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">:</span>end<span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx321, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">:</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">400</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx322, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">420</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">:</span>end<span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx331, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">:</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">400</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx332, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">3</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">420</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">:</span>end<span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> <div id="org0c4287e" class="figure"> <p><img src="figs/meas3_hexa_z_psd.png" alt="meas3_hexa_z_psd.png" /> </p> <p><span class="figure-number">Figure 17: </span>PSD of the Z velocity of the Hexapod - measurement 3</p> </div> <div id="org899151a" class="figure"> <p><img src="figs/meas3_ry_z_psd.png" alt="meas3_ry_z_psd.png" /> </p> <p><span class="figure-number">Figure 18: </span>PSD of the Z velocity of the Ry stage - measurement 3</p> </div> <div id="org0fc8e31" class="figure"> <p><img src="figs/meas3_ty_y_psd.png" alt="meas3_ty_y_psd.png" /> </p> <p><span class="figure-number">Figure 19: </span>PSD of the Ty velocity in the Y direction - measurement 3</p> </div> <div class="important"> <p> Turning ON induces some motion on the hexapod in the z direction (figure <a href="#org0c4287e">17</a>), on the tilt stage in the z direction (figure <a href="#org899151a">18</a>) and on the y motion of the Ty stage (figure <a href="#org0fc8e31">19</a>): </p> <ul class="org-ul"> <li>at 17Hz</li> <li>at 34Hz</li> </ul> </div> </div> </div> <div id="outline-container-org1529580" class="outline-2"> <h2 id="org1529580"><span class="section-number-2">10</span> Measurement 4 - Effect of the Splip-Ring and Spindle</h2> <div class="outline-text-2" id="text-10"> <p> The slip ring is turned on at 300s, then the spindle is turned on at 620s (table <a href="#org274f078">6</a>). The time domain signals are shown figure <a href="#orgf0966f9">20</a>. </p> <table id="org274f078" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <caption class="t-above"><span class="table-number">Table 6:</span> Stages configuration - Measurement 4</caption> <colgroup> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> <col class="org-left" /> </colgroup> <thead> <tr> <th scope="col" class="org-left">Time</th> <th scope="col" class="org-left">0-300</th> <th scope="col" class="org-left">300-620</th> <th scope="col" class="org-left">620-end</th> </tr> </thead> <tbody> <tr> <td class="org-left">Ty</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">Ry</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> <tr> <td class="org-left">SlipRing</td> <td class="org-left">OFF</td> <td class="org-left"><b>ON</b></td> <td class="org-left"><b>ON</b></td> </tr> <tr> <td class="org-left">Spindle</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> <td class="org-left"><b>ON</b></td> </tr> <tr> <td class="org-left">Hexa</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> <td class="org-left">OFF</td> </tr> </tbody> </table> <div id="orgf0966f9" class="figure"> <p><img src="figs/meas4.png" alt="meas4.png" /> </p> <p><span class="figure-number">Figure 20: </span>Time domain - measurement 4</p> </div> <p> If we integrate this signal, we obtain Figure <a href="#org62b5bdf">21</a>. </p> <div id="org62b5bdf" class="figure"> <p><img src="figs/meas4_int.png" alt="meas4_int.png" /> </p> <p><span class="figure-number">Figure 21: </span>Time domain - measurement 4</p> </div> <p> The PSD of each track are computed using the code below. </p> <div id="orgfd7f8ce" class="figure"> <p><img src="figs/meas4_hexa_z_psd.png" alt="meas4_hexa_z_psd.png" /> </p> <p><span class="figure-number">Figure 22: </span>PSD of the Z velocity of the Hexapod - measurement 4</p> </div> <p> We plot the PSD of the displacement. </p> <div id="org917dbdc" class="figure"> <p><img src="figs/meas4_hexa_z_psd_int.png" alt="meas4_hexa_z_psd_int.png" /> </p> <p><span class="figure-number">Figure 23: </span>PSD<sub>INT</sub> of the Z velocity of the Hexapod - measurement 4</p> </div> <p> And we compute the Cumulative amplitude spectrum. </p> <div id="orge4b6d59" class="figure"> <p><img src="figs/meas4_ry_z_psd.png" alt="meas4_ry_z_psd.png" /> </p> <p><span class="figure-number">Figure 24: </span>PSD of the Ry rotation in the Y direction - measurement 4</p> </div> <div id="org08ad3dc" class="figure"> <p><img src="figs/meas4_ty_y_psd.png" alt="meas4_ty_y_psd.png" /> </p> <p><span class="figure-number">Figure 25: </span>PSD of the Ty velocity in the Y direction - measurement 4</p> </div> <div class="important"> <p> Turning ON the splipring seems to not add motions on the stages measured. It even seems to lower the motion of the Ty stage (figure <a href="#org08ad3dc">25</a>): does that make any sense? </p> <p> Turning ON the spindle induces motions: </p> <ul class="org-ul"> <li>at 5Hz on each motion measured</li> <li>at 22.5Hz on the Z motion of the Hexapod. Can this is due to some 50Hz?</li> <li>at 62Hz on each motion measured</li> </ul> </div> </div> </div> <div id="outline-container-orga767d61" class="outline-2"> <h2 id="orga767d61"><span class="section-number-2">11</span> Measurement 5 - Transmission from ground to marble</h2> <div class="outline-text-2" id="text-11"> <p> This measurement just consists of measurement of Y-Z motion of the ground and the marble. </p> <p> The time domain signals are shown on figure <a href="#orgc513617">26</a>. </p> <div id="orgc513617" class="figure"> <p><img src="figs/meas5.png" alt="meas5.png" /> </p> <p><span class="figure-number">Figure 26: </span>Time domain - measurement 5</p> </div> <p> We compute the PSD of each track and we plot the PSD of the Z motion for the ground and marble on figure <a href="#org28b0b94">27</a> and for the Y motion on figure <a href="#orgf797eae">28</a>. </p> <div class="org-src-container"> <pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>pxx51, f51<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx52, f52<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx53, f53<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>pxx54, f54<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track4<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> <div id="org28b0b94" class="figure"> <p><img src="figs/meas5_z_psd.png" alt="meas5_z_psd.png" /> </p> <p><span class="figure-number">Figure 27: </span>PSD of the ground and marble in the Z direction</p> </div> <div id="orgf797eae" class="figure"> <p><img src="figs/meas5_y_psd.png" alt="meas5_y_psd.png" /> </p> <p><span class="figure-number">Figure 28: </span>PSD of the ground and marble in the Y direction</p> </div> <p> Then, instead of looking at the Power Spectral Density, we can try to estimate the transfer function from a ground motion to the motion of the marble. The transfer functions are shown on figure <a href="#orgbb283a9">29</a> and the coherence on figure <a href="#orga357e58">30</a>. </p> <div class="org-src-container"> <pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>tfz, fz<span class="org-rainbow-delimiters-depth-1">]</span> = tfestimate<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>tfy, fy<span class="org-rainbow-delimiters-depth-1">]</span> = tfestimate<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track4<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> <div id="orgbb283a9" class="figure"> <p><img src="figs/meas5_tf.png" alt="meas5_tf.png" /> </p> <p><span class="figure-number">Figure 29: </span>Transfer function estimation - measurement 5</p> </div> <div class="org-src-container"> <pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>cohz, fz<span class="org-rainbow-delimiters-depth-1">]</span> = mscohere<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track1<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track2<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; <span class="org-rainbow-delimiters-depth-1">[</span>cohy, fy<span class="org-rainbow-delimiters-depth-1">]</span> = mscohere<span class="org-rainbow-delimiters-depth-1">(</span>meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track3<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, meas<span class="org-rainbow-delimiters-depth-2">{</span><span class="org-highlight-numbers-number">5</span><span class="org-rainbow-delimiters-depth-2">}</span>.Track4<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-type">:</span><span class="org-rainbow-delimiters-depth-2">)</span>, psd_window, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>; </pre> </div> <div id="orga357e58" class="figure"> <p><img src="figs/meas5_coh.png" alt="meas5_coh.png" /> </p> <p><span class="figure-number">Figure 30: </span>Coherence - measurement 5</p> </div> <div class="important"> <p> The marble seems to have a resonance at around 20Hz on the Y direction. But the coherence is not good above 20Hz, so it is difficult to estimate resonances. </p> </div> </div> </div> </div> <div id="postamble" class="status"> <p class="author">Author: Thomas Dehaeze</p> <p class="date">Created: 2019-04-02 mar. 10:39</p> <p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p> </div> </body> </html>