Error when saving the signals

This commit is contained in:
2019-09-12 15:50:31 +02:00
parent c3ef88a366
commit b2d6317679
3 changed files with 348 additions and 111 deletions

View File

@@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2019-09-11 mer. 09:10 -->
<!-- 2019-09-12 jeu. 15:20 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Cercalo Test Bench</title>
@@ -276,27 +276,39 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org7d7af99">1. Identification</a>
<li><a href="#orgff87b8d">1. Introduction</a></li>
<li><a href="#org2459267">2. Identification</a>
<ul>
<li><a href="#org720ab4f">1.1. Excitation Data</a></li>
<li><a href="#org2335cee">1.2. Input / Output data</a></li>
<li><a href="#orgddaeb4a">1.3. Estimation of the Frequency Response Function Matrix</a></li>
<li><a href="#org3d15257">1.4. Coherence</a></li>
<li><a href="#org891ffe6">1.5. Extraction of a transfer function matrix</a></li>
<li><a href="#org9b7ddaf">2.1. Excitation Data</a></li>
<li><a href="#org04e353b">2.2. Huddle Test</a></li>
<li><a href="#org4dc3ca0">2.3. Input / Output data</a></li>
<li><a href="#org1f732b6">2.4. Estimation of the Frequency Response Function Matrix</a></li>
<li><a href="#org8986a6a">2.5. Coherence</a></li>
<li><a href="#orgb611053">2.6. Extraction of a transfer function matrix</a></li>
</ul>
</li>
<li><a href="#orgbb47804">2. Plant Analysis</a></li>
<li><a href="#org7348e54">3. Control</a></li>
<li><a href="#org5cfd6fc">3. Sensor Noise</a></li>
<li><a href="#org2bd416c">4. Plant Analysis</a>
<ul>
<li><a href="#orge74c87e">4.1. Rotation Matrix</a></li>
</ul>
</li>
<li><a href="#org7b9c8d0">5. Control Objective</a></li>
<li><a href="#orgbefa210">6. Plant Scaling</a></li>
<li><a href="#org90e1042">7. Control Design</a></li>
</ul>
</div>
</div>
<div id="outline-container-orgff87b8d" class="outline-2">
<h2 id="orgff87b8d"><span class="section-number-2">1</span> Introduction</h2>
</div>
<div id="outline-container-org7d7af99" class="outline-2">
<h2 id="org7d7af99"><span class="section-number-2">1</span> Identification</h2>
<div class="outline-text-2" id="text-1">
<div id="outline-container-org2459267" class="outline-2">
<h2 id="org2459267"><span class="section-number-2">2</span> Identification</h2>
<div class="outline-text-2" id="text-2">
<p>
<a id="org57da1c6"></a>
<a id="org1f481c7"></a>
</p>
<div class="note">
<p>
@@ -306,9 +318,9 @@ All the files (data and Matlab scripts) are accessible <a href="data/plant_ident
</div>
</div>
<div id="outline-container-org720ab4f" class="outline-3">
<h3 id="org720ab4f"><span class="section-number-3">1.1</span> Excitation Data</h3>
<div class="outline-text-3" id="text-1-1">
<div id="outline-container-org9b7ddaf" class="outline-3">
<h3 id="org9b7ddaf"><span class="section-number-3">2.1</span> Excitation Data</h3>
<div class="outline-text-3" id="text-2-1">
<div class="org-src-container">
<pre class="src src-matlab">fs = <span class="org-highlight-numbers-number">1e4</span>;
Ts = <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span>fs;
@@ -344,9 +356,80 @@ Discrete-time zero/pole/gain model.
</div>
</div>
<div id="outline-container-org2335cee" class="outline-3">
<h3 id="org2335cee"><span class="section-number-3">1.2</span> Input / Output data</h3>
<div class="outline-text-3" id="text-1-2">
<div id="outline-container-org04e353b" class="outline-3">
<h3 id="org04e353b"><span class="section-number-3">2.2</span> Huddle Test</h3>
<div class="outline-text-3" id="text-2-2">
<p>
We load the data taken during the Huddle Test.
</p>
<div class="org-src-container">
<pre class="src src-matlab">load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'mat/data_huddle_test.mat', 't', 'xh', 'xv', 'cuh', 'cuv'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
</pre>
</div>
<p>
The variables are:
</p>
<dl class="org-dl">
<dt>\(x_h\)</dt><dd>Normalized position of the beam in the horizontal direction as measured by the 4 quadrant diode</dd>
<dt>\(x_v\)</dt><dd>Normalized position of the beam in the vertical direction as measured by the 4 quadrant diode</dd>
<dt>\(cu_h\)</dt><dd>Voltage across the inductance used for the horizontal positioning of the Cercalo</dd>
<dt>\(vu_v\)</dt><dd>Voltage across the inductance used for the vertical positioning of the Cercalo</dd>
</dl>
<div class="org-src-container">
<pre class="src src-matlab">xh<span class="org-rainbow-delimiters-depth-1">(</span>t<span class="org-type">&lt;</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">)</span> = <span class="org-rainbow-delimiters-depth-1">[]</span>;
xv<span class="org-rainbow-delimiters-depth-1">(</span>t<span class="org-type">&lt;</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">)</span> = <span class="org-rainbow-delimiters-depth-1">[]</span>;
cuh<span class="org-rainbow-delimiters-depth-1">(</span>t<span class="org-type">&lt;</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">)</span> = <span class="org-rainbow-delimiters-depth-1">[]</span>;
cuv<span class="org-rainbow-delimiters-depth-1">(</span>t<span class="org-type">&lt;</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">)</span> = <span class="org-rainbow-delimiters-depth-1">[]</span>;
t<span class="org-rainbow-delimiters-depth-1">(</span>t<span class="org-type">&lt;</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">)</span> = <span class="org-rainbow-delimiters-depth-1">[]</span>;
t = t <span class="org-type">-</span> t<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">)</span>;
</pre>
</div>
<div class="org-src-container">
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>psd_xh, f<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>xh, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">*</span>fs<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <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>psd_xv, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>xv, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">*</span>fs<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <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 class="org-src-container">
<pre class="src src-matlab"><span class="org-type">figure</span>;
hold on;
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>psd_xh<span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-string">'DisplayName', '</span>$<span class="org-type">\</span>Gamma_<span class="org-rainbow-delimiters-depth-2">{</span>x_h<span class="org-rainbow-delimiters-depth-2">}</span>$'<span class="org-rainbow-delimiters-depth-1">)</span>;
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>psd_xv<span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-string">'DisplayName', '</span>$<span class="org-type">\</span>Gamma_<span class="org-rainbow-delimiters-depth-2">{</span>x_v<span class="org-rainbow-delimiters-depth-2">}</span>$'<span class="org-rainbow-delimiters-depth-1">)</span>;
hold off;
<span class="org-type">set</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">gca</span>, <span class="org-string">'xscale', 'log'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">; set</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">gca, 'yscale', 'log'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
xlabel<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'Frequency </span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">[</span></span><span class="org-string">Hz</span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">]</span></span><span class="org-string">'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">; ylabel</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">'</span>ASD $<span class="org-type">\</span>left<span class="org-rainbow-delimiters-depth-2">[</span><span class="org-type">\</span>frac<span class="org-rainbow-delimiters-depth-3">{</span>V<span class="org-rainbow-delimiters-depth-3">}{</span><span class="org-type">\</span>sqrt<span class="org-rainbow-delimiters-depth-4">{</span>Hz<span class="org-rainbow-delimiters-depth-4">}</span><span class="org-rainbow-delimiters-depth-3">}</span><span class="org-type">\</span>right<span class="org-rainbow-delimiters-depth-2">]</span>$'<span class="org-rainbow-delimiters-depth-1">)</span>
legend<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'Location', 'southwest'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
xlim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbow-delimiters-depth-2">[</span><span class="org-highlight-numbers-number">1</span>, <span class="org-highlight-numbers-number">1000</span><span class="org-rainbow-delimiters-depth-2">]</span><span class="org-rainbow-delimiters-depth-1">)</span>;
</pre>
</div>
<div class="org-src-container">
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>psd_cuh, f<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>cuh, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">*</span>fs<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <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>psd_cuv, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>cuv, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">*</span>fs<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <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 class="org-src-container">
<pre class="src src-matlab"><span class="org-type">figure</span>;
hold on;
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>psd_cuh<span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-string">'DisplayName', '</span>$<span class="org-type">\</span>Gamma_<span class="org-rainbow-delimiters-depth-2">{</span>cu_h<span class="org-rainbow-delimiters-depth-2">}</span>$'<span class="org-rainbow-delimiters-depth-1">)</span>;
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>psd_cuv<span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-string">'DisplayName', '</span>$<span class="org-type">\</span>Gamma_<span class="org-rainbow-delimiters-depth-2">{</span>cu_v<span class="org-rainbow-delimiters-depth-2">}</span>$'<span class="org-rainbow-delimiters-depth-1">)</span>;
hold off;
<span class="org-type">set</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">gca</span>, <span class="org-string">'xscale', 'log'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">; set</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">gca, 'yscale', 'log'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
xlabel<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'Frequency </span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">[</span></span><span class="org-string">Hz</span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">]</span></span><span class="org-string">'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">; ylabel</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">'</span>ASD $<span class="org-type">\</span>left<span class="org-rainbow-delimiters-depth-2">[</span><span class="org-type">\</span>frac<span class="org-rainbow-delimiters-depth-3">{</span>V<span class="org-rainbow-delimiters-depth-3">}{</span><span class="org-type">\</span>sqrt<span class="org-rainbow-delimiters-depth-4">{</span>Hz<span class="org-rainbow-delimiters-depth-4">}</span><span class="org-rainbow-delimiters-depth-3">}</span><span class="org-type">\</span>right<span class="org-rainbow-delimiters-depth-2">]</span>$'<span class="org-rainbow-delimiters-depth-1">)</span>
legend<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'Location', 'southwest'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
xlim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbow-delimiters-depth-2">[</span><span class="org-highlight-numbers-number">1</span>, <span class="org-highlight-numbers-number">1000</span><span class="org-rainbow-delimiters-depth-2">]</span><span class="org-rainbow-delimiters-depth-1">)</span>;
</pre>
</div>
</div>
</div>
<div id="outline-container-org4dc3ca0" class="outline-3">
<h3 id="org4dc3ca0"><span class="section-number-3">2.3</span> Input / Output data</h3>
<div class="outline-text-3" id="text-2-3">
<p>
The identification data is loaded
</p>
@@ -388,7 +471,7 @@ uy.yy = uy.yy<span class="org-type">-</span>mean<span class="org-rainbow-delimit
</div>
<div id="orgfbb461b" class="figure">
<div id="org2d6aeb1" class="figure">
<p><img src="figs/identification_ux.png" alt="identification_ux.png" />
</p>
<p><span class="figure-number">Figure 1: </span>Identification signals when exciting the \(x\) axis (<a href="./figs/identification_ux.png">png</a>, <a href="./figs/identification_ux.pdf">pdf</a>)</p>
@@ -396,7 +479,7 @@ uy.yy = uy.yy<span class="org-type">-</span>mean<span class="org-rainbow-delimit
<div id="orgdfdfab9" class="figure">
<div id="orgd5e71a4" class="figure">
<p><img src="figs/identification_uy.png" alt="identification_uy.png" />
</p>
<p><span class="figure-number">Figure 2: </span>Identification signals when exciting the \(y\) axis (<a href="./figs/identification_uy.png">png</a>, <a href="./figs/identification_uy.pdf">pdf</a>)</p>
@@ -404,9 +487,9 @@ uy.yy = uy.yy<span class="org-type">-</span>mean<span class="org-rainbow-delimit
</div>
</div>
<div id="outline-container-orgddaeb4a" class="outline-3">
<h3 id="orgddaeb4a"><span class="section-number-3">1.3</span> Estimation of the Frequency Response Function Matrix</h3>
<div class="outline-text-3" id="text-1-3">
<div id="outline-container-org1f732b6" class="outline-3">
<h3 id="org1f732b6"><span class="section-number-3">2.4</span> Estimation of the Frequency Response Function Matrix</h3>
<div class="outline-text-3" id="text-2-4">
<p>
We compute an estimate of the transfer functions.
</p>
@@ -419,7 +502,7 @@ We compute an estimate of the transfer functions.
</div>
<div id="orga43b16c" class="figure">
<div id="org2051377" class="figure">
<p><img src="figs/frequency_response_matrix.png" alt="frequency_response_matrix.png" />
</p>
<p><span class="figure-number">Figure 3: </span>Frequency Response Matrix (<a href="./figs/frequency_response_matrix.png">png</a>, <a href="./figs/frequency_response_matrix.pdf">pdf</a>)</p>
@@ -427,9 +510,9 @@ We compute an estimate of the transfer functions.
</div>
</div>
<div id="outline-container-org3d15257" class="outline-3">
<h3 id="org3d15257"><span class="section-number-3">1.4</span> Coherence</h3>
<div class="outline-text-3" id="text-1-4">
<div id="outline-container-org8986a6a" class="outline-3">
<h3 id="org8986a6a"><span class="section-number-3">2.5</span> Coherence</h3>
<div class="outline-text-3" id="text-2-5">
<div class="org-src-container">
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>coh_ux_yx, f<span class="org-rainbow-delimiters-depth-1">]</span> = mscohere<span class="org-rainbow-delimiters-depth-1">(</span>ux.ux, ux.yx, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">*</span>fs<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <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>coh_ux_yy, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = mscohere<span class="org-rainbow-delimiters-depth-1">(</span>ux.ux, ux.yy, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">*</span>fs<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <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>;
@@ -439,7 +522,7 @@ We compute an estimate of the transfer functions.
</div>
<div id="org02b2d5b" class="figure">
<div id="orgf0f9ad1" class="figure">
<p><img src="figs/identification_coherence.png" alt="identification_coherence.png" />
</p>
<p><span class="figure-number">Figure 4: </span>Coherence (<a href="./figs/identification_coherence.png">png</a>, <a href="./figs/identification_coherence.pdf">pdf</a>)</p>
@@ -448,9 +531,9 @@ We compute an estimate of the transfer functions.
</div>
<div id="outline-container-org891ffe6" class="outline-3">
<h3 id="org891ffe6"><span class="section-number-3">1.5</span> Extraction of a transfer function matrix</h3>
<div class="outline-text-3" id="text-1-5">
<div id="outline-container-orgb611053" class="outline-3">
<h3 id="orgb611053"><span class="section-number-3">2.6</span> Extraction of a transfer function matrix</h3>
<div class="outline-text-3" id="text-2-6">
<p>
First we define the initial guess for the resonance frequencies and the weights associated.
</p>
@@ -503,7 +586,7 @@ Ignore data above some frequency.
</div>
<div id="orga5e5efc" class="figure">
<div id="org9d870b3" class="figure">
<p><img src="figs/weights.png" alt="weights.png" />
</p>
<p><span class="figure-number">Figure 5: </span>Weights amplitude (<a href="./figs/weights.png">png</a>, <a href="./figs/weights.pdf">pdf</a>)</p>
@@ -555,7 +638,7 @@ An we run the <code>vectfit3</code> algorithm.
</div>
<div id="org690224b" class="figure">
<div id="orgce7fc34" class="figure">
<p><img src="figs/identification_matrix_fit.png" alt="identification_matrix_fit.png" />
</p>
<p><span class="figure-number">Figure 6: </span>Transfer Function Extraction of the FRF matrix (<a href="./figs/identification_matrix_fit.png">png</a>, <a href="./figs/identification_matrix_fit.pdf">pdf</a>)</p>
@@ -583,16 +666,65 @@ G = <span class="org-rainbow-delimiters-depth-1">[</span>G_ux_yx, G_uy_yx;
</div>
</div>
<div id="outline-container-orgbb47804" class="outline-2">
<h2 id="orgbb47804"><span class="section-number-2">2</span> Plant Analysis</h2>
<div id="outline-container-org5cfd6fc" class="outline-2">
<h2 id="org5cfd6fc"><span class="section-number-2">3</span> Sensor Noise</h2>
</div>
<div id="outline-container-org7348e54" class="outline-2">
<h2 id="org7348e54"><span class="section-number-2">3</span> Control</h2>
<div id="outline-container-org2bd416c" class="outline-2">
<h2 id="org2bd416c"><span class="section-number-2">4</span> Plant Analysis</h2>
<div class="outline-text-2" id="text-4">
</div>
<div id="outline-container-orge74c87e" class="outline-3">
<h3 id="orge74c87e"><span class="section-number-3">4.1</span> Rotation Matrix</h3>
<div class="outline-text-3" id="text-4-1">
<div class="org-src-container">
<pre class="src src-matlab">G0 = freqresp<span class="org-rainbow-delimiters-depth-1">(</span>G, <span class="org-highlight-numbers-number">0</span><span class="org-rainbow-delimiters-depth-1">)</span>;
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-org7b9c8d0" class="outline-2">
<h2 id="org7b9c8d0"><span class="section-number-2">5</span> Control Objective</h2>
<div class="outline-text-2" id="text-5">
<p>
The maximum expected stroke is \(y_\text{max} = 3mm \approx 5e^{-2} rad\) at \(1Hz\).
The maximum wanted error is \(e_\text{max} = 10 \mu rad\).
</p>
<p>
Thus, we require the sensitivity function at \(\omega_0 = 1\text{ Hz}\):
</p>
\begin{align*}
|S(j\omega_0)| &< \left| \frac{e_\text{max}}{y_\text{max}} \right| \\
&< 2 \cdot 10^{-4}
\end{align*}
<p>
In terms of loop gain, this is equivalent to:
\[ |L(j\omega_0)| > 5 \cdot 10^{3} \]
</p>
</div>
</div>
<div id="outline-container-orgbefa210" class="outline-2">
<h2 id="orgbefa210"><span class="section-number-2">6</span> Plant Scaling</h2>
<div class="outline-text-2" id="text-6">
<ul class="org-ul">
<li>measured noise</li>
<li>expected perturbations</li>
<li>maximum input usage</li>
<li>maximum wanted error</li>
</ul>
</div>
</div>
<div id="outline-container-org90e1042" class="outline-2">
<h2 id="org90e1042"><span class="section-number-2">7</span> Control Design</h2>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: Dehaeze Thomas</p>
<p class="date">Created: 2019-09-11 mer. 09:10</p>
<p class="date">Created: 2019-09-12 jeu. 15:20</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>