Add example system
This commit is contained in:
494
index.html
494
index.html
@@ -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>
|
||||
<!-- 2020-11-25 mer. 19:38 -->
|
||||
<!-- 2020-11-27 ven. 18:20 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<title>Robust Control - \(\mathcal{H}_\infty\) Synthesis</title>
|
||||
<meta name="generator" content="Org mode" />
|
||||
@@ -30,29 +30,46 @@
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org983c7b8">1. Introduction to the Control Methodology - Model Based Control</a></li>
|
||||
<li><a href="#org56e9b1e">2. Some Background: From Classical Control to Robust Control</a></li>
|
||||
<li><a href="#org26e4f77">3. The \(\mathcal{H}_\infty\) Norm</a></li>
|
||||
<li><a href="#org7fece23">4. \(\mathcal{H}_\infty\) Synthesis</a></li>
|
||||
<li><a href="#orga8463c6">5. The Generalized Plant</a></li>
|
||||
<li><a href="#org8f2f474">6. Problem Formulation</a></li>
|
||||
<li><a href="#org6e6fa08">7. Classical feedback control and closed loop transfer functions</a></li>
|
||||
<li><a href="#org61c8d78">8. From a Classical Feedback Architecture to a Generalized Plant</a></li>
|
||||
<li><a href="#orgf0b775f">9. Modern Interpretation of the Control Specifications</a>
|
||||
<li><a href="#org482cee2">1. Introduction to the Control Methodology - Model Based Control</a>
|
||||
<ul>
|
||||
<li><a href="#org0691a02">9.1. Introduction</a></li>
|
||||
<li><a href="#org279a16f">1.1. Control Methodology</a></li>
|
||||
<li><a href="#orgca6e3d9">1.2. Some Background: From Classical Control to Robust Control</a></li>
|
||||
<li><a href="#orgc1a54dd">1.3. Example System</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org2d9c766">10. Resources</a></li>
|
||||
<li><a href="#org1336132">2. Classical Open Loop Shaping</a>
|
||||
<ul>
|
||||
<li><a href="#org1c9ddc9">2.1. Introduction ot Open Loop Shaping</a></li>
|
||||
<li><a href="#org3cd2ec2">2.2. Example of Open Loop Shaping</a></li>
|
||||
<li><a href="#orgafc190d">2.3. \(\mathcal{H}_\infty\) Loop Shaping Synthesis</a></li>
|
||||
<li><a href="#org386c720">2.4. Example of the \(\mathcal{H}_\infty\) Loop Shaping Synthesis</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgcf6b2a6">3. The \(\mathcal{H}_\infty\) Norm</a></li>
|
||||
<li><a href="#org5bc80a8">4. \(\mathcal{H}_\infty\) Synthesis</a></li>
|
||||
<li><a href="#org3a241a5">5. The Generalized Plant</a></li>
|
||||
<li><a href="#org49fe7df">6. Problem Formulation</a></li>
|
||||
<li><a href="#orgf671631">7. Classical feedback control and closed loop transfer functions</a></li>
|
||||
<li><a href="#orgd118710">8. From a Classical Feedback Architecture to a Generalized Plant</a></li>
|
||||
<li><a href="#orgdd1c5fa">9. Modern Interpretation of the Control Specifications</a>
|
||||
<ul>
|
||||
<li><a href="#org00cad5d">9.1. Introduction</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org0e07a10">10. Resources</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org983c7b8" class="outline-2">
|
||||
<h2 id="org983c7b8"><span class="section-number-2">1</span> Introduction to the Control Methodology - Model Based Control</h2>
|
||||
<div id="outline-container-org482cee2" class="outline-2">
|
||||
<h2 id="org482cee2"><span class="section-number-2">1</span> Introduction to the Control Methodology - Model Based Control</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org279a16f" class="outline-3">
|
||||
<h3 id="org279a16f"><span class="section-number-3">1.1</span> Control Methodology</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
The typical methodology when applying Model Based Control to a plant is schematically shown in Figure <a href="#org893c4a9">1</a>.
|
||||
The typical methodology when applying Model Based Control to a plant is schematically shown in Figure <a href="#org3328399">1</a>.
|
||||
It consists of three steps:
|
||||
</p>
|
||||
<ol class="org-ol">
|
||||
@@ -66,7 +83,7 @@ It consists of three steps:
|
||||
</ol>
|
||||
|
||||
|
||||
<div id="org893c4a9" class="figure">
|
||||
<div id="org3328399" class="figure">
|
||||
<p><img src="figs/control-procedure.png" alt="control-procedure.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 1: </span>Typical Methodoly for Model Based Control</p>
|
||||
@@ -78,9 +95,9 @@ In this document, we will mainly focus on steps 2 and 3.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org56e9b1e" class="outline-2">
|
||||
<h2 id="org56e9b1e"><span class="section-number-2">2</span> Some Background: From Classical Control to Robust Control</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<div id="outline-container-orgca6e3d9" class="outline-3">
|
||||
<h3 id="orgca6e3d9"><span class="section-number-3">1.2</span> Some Background: From Classical Control to Robust Control</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
Classical Control (1930)
|
||||
</p>
|
||||
@@ -156,10 +173,363 @@ Robust Control (1980)
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org26e4f77" class="outline-2">
|
||||
<h2 id="org26e4f77"><span class="section-number-2">3</span> The \(\mathcal{H}_\infty\) Norm</h2>
|
||||
|
||||
<div id="outline-container-orgc1a54dd" class="outline-3">
|
||||
<h3 id="orgc1a54dd"><span class="section-number-3">1.3</span> Example System</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
Let’s consider the test-system shown in Figure <a href="#orgbec3f57">2</a>.
|
||||
The notations used are listed in Table <a href="#orgf10115b">1</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="orgbec3f57" class="figure">
|
||||
<p><img src="figs/mech_sys_1dof_inertial_contr.png" alt="mech_sys_1dof_inertial_contr.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 2: </span>Test System consisting of a payload with a mass \(m\) on top of an active system with a stiffness \(k\), damping \(c\) and an actuator.</p>
|
||||
</div>
|
||||
|
||||
<table id="orgf10115b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<caption class="t-above"><span class="table-number">Table 1:</span> Example system variables</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"><b>Notation</b></th>
|
||||
<th scope="col" class="org-left"><b>Description</b></th>
|
||||
<th scope="col" class="org-left"><b>Value</b></th>
|
||||
<th scope="col" class="org-left"><b>Unit</b></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="org-left">\(m\)</td>
|
||||
<td class="org-left">Payload’s mass to position / isolate</td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">[kg]</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(k\)</td>
|
||||
<td class="org-left">Stiffness of the suspension system</td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">[N/m]</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(c\)</td>
|
||||
<td class="org-left">Damping coefficient of the suspension system</td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">[N/(m/s)]</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(y\)</td>
|
||||
<td class="org-left">Payload absolute displacement (measured by an inertial sensor)</td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">[m]</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(d\)</td>
|
||||
<td class="org-left">Ground displacement, it acts as a disturbance</td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">[m]</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(u\)</td>
|
||||
<td class="org-left">Actuator force</td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">[N]</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(r\)</td>
|
||||
<td class="org-left">Wanted position of the mass (the reference)</td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">[m]</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(\epsilon = r - y\)</td>
|
||||
<td class="org-left">Position error</td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">[m]</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(K\)</td>
|
||||
<td class="org-left">Feedback controller</td>
|
||||
<td class="org-left">to be designed</td>
|
||||
<td class="org-left">[N/m]</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="exercice" id="org09b2f15">
|
||||
<p>
|
||||
Derive the following open-loop transfer functions:
|
||||
</p>
|
||||
\begin{align}
|
||||
G(s) &= \frac{y}{u} \\
|
||||
G_d(s) &= \frac{y}{d}
|
||||
\end{align}
|
||||
|
||||
<p>
|
||||
<b>Hint:</b> You can follow this generic procedure:
|
||||
</p>
|
||||
<ol class="org-ol">
|
||||
<li>List all applied forces ot the mass: Actuator force, Stiffness force (Hooke’s law), …</li>
|
||||
<li>Apply the Newton’s Second Law on the payload
|
||||
\[ m \ddot{y} = \Sigma F \]</li>
|
||||
<li>Transform the differential equations into the Laplace domain:
|
||||
\[ \frac{d\ \cdot}{dt} \Leftrightarrow \cdot \times s \]</li>
|
||||
<li>Write \(y(s)\) as a function of \(u(s)\) and \(w(s)\)</li>
|
||||
</ol>
|
||||
|
||||
</div>
|
||||
|
||||
<p>
|
||||
Having obtained \(G(s)\) and \(G_d(s)\), we can transform the system shown in Figure <a href="#orgbec3f57">2</a> into a classical feedback form as shown in Figure <a href="#orge09e85e">4</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="orge1cf983" class="figure">
|
||||
<p><img src="figs/classical_feedback_test_system.png" alt="classical_feedback_test_system.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 3: </span>Block diagram corresponding to the example system</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1336132" class="outline-2">
|
||||
<h2 id="org1336132"><span class="section-number-2">2</span> Classical Open Loop Shaping</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org1c9ddc9" class="outline-3">
|
||||
<h3 id="org1c9ddc9"><span class="section-number-3">2.1</span> Introduction ot Open Loop Shaping</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
Usually, the controller \(K(s)\) is designed such that the loop gain \(L(s)\) has desirable shape.
|
||||
This technique is called <b>Open Loop Shaping</b>.
|
||||
</p>
|
||||
|
||||
<div class="inlinetask">
|
||||
<b>Explain why the Loop gain si an important “value”</b><br />
|
||||
<p>
|
||||
For instance example all the specifications can usually be explained in terms of the open loop gain.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="orge09e85e" class="figure">
|
||||
<p><img src="figs/open_loop_shaping.png" alt="open_loop_shaping.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 4: </span>Classical Feedback Architecture</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
This is usually done manually has the loop gain \(L(s)\) depends linearly of \(K(s)\):
|
||||
</p>
|
||||
\begin{equation}
|
||||
L(s) = G(s) K(s)
|
||||
\end{equation}
|
||||
<ul class="org-ul">
|
||||
<li>where \(L(s)\) is called the <b>Loop Gain Transfer Function</b></li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
\(K(s)\) then consists of a combination of leads, lags, notches, etc. such that its product with \(G(s)\) has wanted shape.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3cd2ec2" class="outline-3">
|
||||
<h3 id="org3cd2ec2"><span class="section-number-3">2.2</span> Example of Open Loop Shaping</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">k = 1e<span class="org-type">-</span>6;
|
||||
m = 10;
|
||||
c = 10;
|
||||
|
||||
G =
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="org846352b" class="figure">
|
||||
<p><img src="figs/bode_plot_example_afm.png" alt="bode_plot_example_afm.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 5: </span>Bode plot of the plant \(G(s)\)</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
Specifications:
|
||||
</p>
|
||||
<ul class="org-ul">
|
||||
<li><b>Performance</b>: Bandwidth of approximately 50Hz</li>
|
||||
<li><b>Noise Attenuation</b>: Roll-off of -40dB/decade past 250Hz</li>
|
||||
<li><b>Robustness</b>: Gain margin > 5dB and Phase margin > 40 deg</li>
|
||||
</ul>
|
||||
|
||||
<div class="exercice" id="orge257cef">
|
||||
<p>
|
||||
Using <code>SISOTOOL</code>, design a controller that fulfill the specifications.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">sisotool(G)
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<p>
|
||||
In order to have the wanted Roll-off, two integrators are used, a lead is also added to have sufficient phase margin.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The obtained controller is shown below, and the bode plot of the Loop Gain is shown in Figure <a href="#orgd8a3cda">6</a>.
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">K = 6e4 <span class="org-type">*</span> ...<span class="org-comment"> % Gain</span>
|
||||
1<span class="org-type">/</span>(s<span class="org-type">^</span>2) <span class="org-type">*</span> ...<span class="org-comment"> % Double Integrator</span>
|
||||
(1 <span class="org-type">+</span> s<span class="org-type">/</span>111)<span class="org-type">/</span>(1 <span class="org-type">+</span> s<span class="org-type">/</span>888); <span class="org-comment">% Lead</span>
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="orgd8a3cda" class="figure">
|
||||
<p><img src="figs/loop_gain_manual_afm.png" alt="loop_gain_manual_afm.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 6: </span>Bode Plot of the obtained Loop Gain \(L(s) = G(s) K(s)\)</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
And we can verify that we have the wanted stability margins:
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">[Gm, Pm, <span class="org-type">~</span>, Wc] = margin(G<span class="org-type">*</span>K)
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
<col class="org-left" />
|
||||
|
||||
<col class="org-right" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col" class="org-left"> </th>
|
||||
<th scope="col" class="org-right">Value</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="org-left">Gain Margin [dB]</td>
|
||||
<td class="org-right">7.2</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">Phase Margin [deg]</td>
|
||||
<td class="org-right">48.1</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">Crossover [Hz]</td>
|
||||
<td class="org-right">50.7</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgafc190d" class="outline-3">
|
||||
<h3 id="orgafc190d"><span class="section-number-3">2.3</span> \(\mathcal{H}_\infty\) Loop Shaping Synthesis</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
The Open Loop Shaping synthesis can be performed using the \(\mathcal{H}_\infty\) Synthesis.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Even though we will not go into details, we will provide one example.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Using Matlab, the \(\mathcal{H}_\infty\) synthesis of a controller based on the wanted open loop shape can be performed using the <code>loopsyn</code> command:
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">K = loopsyn(G, Gd);
|
||||
</pre>
|
||||
</div>
|
||||
<p>
|
||||
where:
|
||||
</p>
|
||||
<ul class="org-ul">
|
||||
<li><code>G</code> is the (LTI) plant</li>
|
||||
<li><code>Gd</code> is the wanted loop shape</li>
|
||||
<li><code>K</code> is the synthesize controller</li>
|
||||
</ul>
|
||||
|
||||
<div class="seealso" id="org3c008e3">
|
||||
<p>
|
||||
Matlab documentation of <code>loopsyn</code> (<a href="https://www.mathworks.com/help/robust/ref/loopsyn.html">link</a>).
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org386c720" class="outline-3">
|
||||
<h3 id="org386c720"><span class="section-number-3">2.4</span> Example of the \(\mathcal{H}_\infty\) Loop Shaping Synthesis</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
<p>
|
||||
Let’s re-use the previous plant.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Translate the specification into the wanted shape of the open loop gain.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">G = tf(16,[1 0.16 16]);
|
||||
|
||||
Gd = 3.7e4<span class="org-type">*</span>1<span class="org-type">/</span>s<span class="org-type">*</span>(1 <span class="org-type">+</span> s<span class="org-type">/</span>2<span class="org-type">/</span><span class="org-constant">pi</span><span class="org-type">/</span>20)<span class="org-type">/</span>(1 <span class="org-type">+</span> s<span class="org-type">/</span>2<span class="org-type">/</span><span class="org-constant">pi</span><span class="org-type">/</span>220)<span class="org-type">*</span>1<span class="org-type">/</span>(s <span class="org-type">+</span> s<span class="org-type">/</span>2<span class="org-type">/</span><span class="org-constant">pi</span><span class="org-type">/</span>500);
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">[K,CL,GAM,INFO] = loopsyn(G, Gd);
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">bodeFig({K})
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcf6b2a6" class="outline-2">
|
||||
<h2 id="orgcf6b2a6"><span class="section-number-2">3</span> The \(\mathcal{H}_\infty\) Norm</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<div class="definition" id="org2a3b6b9">
|
||||
<div class="definition" id="org86c267f">
|
||||
<p>
|
||||
The \(\mathcal{H}_\infty\) norm is defined as the peak of the maximum singular value of the frequency response
|
||||
</p>
|
||||
@@ -176,7 +546,7 @@ For a SISO system \(G(s)\), it is simply the peak value of \(|G(j\omega)|\) as a
|
||||
|
||||
</div>
|
||||
|
||||
<div class="exampl" id="org2014425">
|
||||
<div class="exampl" id="org9ae7fd2">
|
||||
<p>
|
||||
Let’s define a plant dynamics:
|
||||
</p>
|
||||
@@ -201,23 +571,23 @@ And compute its \(\mathcal{H}_\infty\) norm using the <code>hinfnorm</code> func
|
||||
|
||||
|
||||
<p>
|
||||
The magnitude \(|G(j\omega)|\) of the plant \(G(s)\) as a function of frequency is shown in Figure <a href="#org614e629">2</a>.
|
||||
The magnitude \(|G(j\omega)|\) of the plant \(G(s)\) as a function of frequency is shown in Figure <a href="#org220c414">7</a>.
|
||||
The maximum value of the magnitude over all frequencies does correspond to the \(\mathcal{H}_\infty\) norm of \(G(s)\) as Equation \eqref{eq:hinf_norm_siso} implies.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="org614e629" class="figure">
|
||||
<div id="org220c414" class="figure">
|
||||
<p><img src="figs/hinfinity_norm_siso_bode.png" alt="hinfinity_norm_siso_bode.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 2: </span>Example of the \(\mathcal{H}_\infty\) norm of a SISO system</p>
|
||||
<p><span class="figure-number">Figure 7: </span>Example of the \(\mathcal{H}_\infty\) norm of a SISO system</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7fece23" class="outline-2">
|
||||
<h2 id="org7fece23"><span class="section-number-2">4</span> \(\mathcal{H}_\infty\) Synthesis</h2>
|
||||
<div id="outline-container-org5bc80a8" class="outline-2">
|
||||
<h2 id="org5bc80a8"><span class="section-number-2">4</span> \(\mathcal{H}_\infty\) Synthesis</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
<p>
|
||||
<b>Optimization problem</b>:
|
||||
@@ -246,17 +616,17 @@ The maximum value of the magnitude over all frequencies does correspond to the \
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga8463c6" class="outline-2">
|
||||
<h2 id="orga8463c6"><span class="section-number-2">5</span> The Generalized Plant</h2>
|
||||
<div id="outline-container-org3a241a5" class="outline-2">
|
||||
<h2 id="org3a241a5"><span class="section-number-2">5</span> The Generalized Plant</h2>
|
||||
<div class="outline-text-2" id="text-5">
|
||||
|
||||
<div id="org501fafe" class="figure">
|
||||
<div id="orgf05141d" class="figure">
|
||||
<p><img src="figs/general_plant.png" alt="general_plant.png" />
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<table id="org56ab58c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<caption class="t-above"><span class="table-number">Table 1:</span> Notations for the general configuration</caption>
|
||||
<table id="orgfb53780" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<caption class="t-above"><span class="table-number">Table 2:</span> Notations for the general configuration</caption>
|
||||
|
||||
<colgroup>
|
||||
<col class="org-left" />
|
||||
@@ -303,10 +673,10 @@ The maximum value of the magnitude over all frequencies does correspond to the \
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8f2f474" class="outline-2">
|
||||
<h2 id="org8f2f474"><span class="section-number-2">6</span> Problem Formulation</h2>
|
||||
<div id="outline-container-org49fe7df" class="outline-2">
|
||||
<h2 id="org49fe7df"><span class="section-number-2">6</span> Problem Formulation</h2>
|
||||
<div class="outline-text-2" id="text-6">
|
||||
<div class="important" id="org3c999ad">
|
||||
<div class="important" id="orgcec66b9">
|
||||
<p>
|
||||
The \(\mathcal{H}_\infty\) Synthesis objective is to find all stabilizing controllers \(K\) which minimize
|
||||
</p>
|
||||
@@ -317,27 +687,27 @@ The \(\mathcal{H}_\infty\) Synthesis objective is to find all stabilizing contro
|
||||
</div>
|
||||
|
||||
|
||||
<div id="orgbf7a5b3" class="figure">
|
||||
<div id="org1e975ee" class="figure">
|
||||
<p><img src="figs/general_control_names.png" alt="general_control_names.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 4: </span>General Control Configuration</p>
|
||||
<p><span class="figure-number">Figure 9: </span>General Control Configuration</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org6e6fa08" class="outline-2">
|
||||
<h2 id="org6e6fa08"><span class="section-number-2">7</span> Classical feedback control and closed loop transfer functions</h2>
|
||||
<div id="outline-container-orgf671631" class="outline-2">
|
||||
<h2 id="orgf671631"><span class="section-number-2">7</span> Classical feedback control and closed loop transfer functions</h2>
|
||||
<div class="outline-text-2" id="text-7">
|
||||
|
||||
<div id="orgbdf8949" class="figure">
|
||||
<div id="orgd59dc12" class="figure">
|
||||
<p><img src="figs/classical_feedback.png" alt="classical_feedback.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 5: </span>Classical Feedback Architecture</p>
|
||||
<p><span class="figure-number">Figure 10: </span>Classical Feedback Architecture</p>
|
||||
</div>
|
||||
|
||||
<table id="org0716237" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<caption class="t-above"><span class="table-number">Table 2:</span> Notations for the Classical Feedback Architecture</caption>
|
||||
<table id="org111f2c5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<caption class="t-above"><span class="table-number">Table 3:</span> Notations for the Classical Feedback Architecture</caption>
|
||||
|
||||
<colgroup>
|
||||
<col class="org-left" />
|
||||
@@ -390,8 +760,8 @@ The \(\mathcal{H}_\infty\) Synthesis objective is to find all stabilizing contro
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org61c8d78" class="outline-2">
|
||||
<h2 id="org61c8d78"><span class="section-number-2">8</span> From a Classical Feedback Architecture to a Generalized Plant</h2>
|
||||
<div id="outline-container-orgd118710" class="outline-2">
|
||||
<h2 id="orgd118710"><span class="section-number-2">8</span> From a Classical Feedback Architecture to a Generalized Plant</h2>
|
||||
<div class="outline-text-2" id="text-8">
|
||||
<p>
|
||||
The procedure is:
|
||||
@@ -401,16 +771,16 @@ The procedure is:
|
||||
<li>Remove \(K\) and rearrange the inputs and outputs</li>
|
||||
</ol>
|
||||
|
||||
<div class="exampl" id="orgf472923">
|
||||
<div class="exampl" id="org211c0bc">
|
||||
<p>
|
||||
Let’s find the Generalized plant of corresponding to the tracking control architecture shown in Figure <a href="#orgdcc8e73">6</a>
|
||||
Let’s find the Generalized plant of corresponding to the tracking control architecture shown in Figure <a href="#orgbec59d7">11</a>
|
||||
</p>
|
||||
|
||||
|
||||
<div id="orgdcc8e73" class="figure">
|
||||
<div id="orgbec59d7" class="figure">
|
||||
<p><img src="figs/classical_feedback_tracking.png" alt="classical_feedback_tracking.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 6: </span>Classical Feedback Control Architecture (Tracking)</p>
|
||||
<p><span class="figure-number">Figure 11: </span>Classical Feedback Control Architecture (Tracking)</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
@@ -425,14 +795,14 @@ First, define the signals of the generalized plant:
|
||||
|
||||
<p>
|
||||
Then, Remove \(K\) and rearrange the inputs and outputs.
|
||||
We obtain the generalized plant shown in Figure <a href="#org6782ec2">7</a>.
|
||||
We obtain the generalized plant shown in Figure <a href="#org64eccd4">12</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="org6782ec2" class="figure">
|
||||
<div id="org64eccd4" class="figure">
|
||||
<p><img src="figs/mixed_sensitivity_ref_tracking.png" alt="mixed_sensitivity_ref_tracking.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 7: </span>Generalized plant of the Classical Feedback Control Architecture (Tracking)</p>
|
||||
<p><span class="figure-number">Figure 12: </span>Generalized plant of the Classical Feedback Control Architecture (Tracking)</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
@@ -449,12 +819,12 @@ Using Matlab, the generalized plant can be defined as follows:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf0b775f" class="outline-2">
|
||||
<h2 id="orgf0b775f"><span class="section-number-2">9</span> Modern Interpretation of the Control Specifications</h2>
|
||||
<div id="outline-container-orgdd1c5fa" class="outline-2">
|
||||
<h2 id="orgdd1c5fa"><span class="section-number-2">9</span> Modern Interpretation of the Control Specifications</h2>
|
||||
<div class="outline-text-2" id="text-9">
|
||||
</div>
|
||||
<div id="outline-container-org0691a02" class="outline-3">
|
||||
<h3 id="org0691a02"><span class="section-number-3">9.1</span> Introduction</h3>
|
||||
<div id="outline-container-org00cad5d" class="outline-3">
|
||||
<h3 id="org00cad5d"><span class="section-number-3">9.1</span> Introduction</h3>
|
||||
<div class="outline-text-3" id="text-9-1">
|
||||
<ul class="org-ul">
|
||||
<li><b>Reference tracking</b> Overshoot, Static error, Setling time
|
||||
@@ -488,22 +858,22 @@ Using Matlab, the generalized plant can be defined as follows:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2d9c766" class="outline-2">
|
||||
<h2 id="org2d9c766"><span class="section-number-2">10</span> Resources</h2>
|
||||
<div id="outline-container-org0e07a10" class="outline-2">
|
||||
<h2 id="org0e07a10"><span class="section-number-2">10</span> Resources</h2>
|
||||
<div class="outline-text-2" id="text-10">
|
||||
<p>
|
||||
<iframe width="1280" height="720" src="https://www.youtube.com/embed/?listType=playlist&list=PLn8PRpmsu08qFLMfgTEzR8DxOPE7fBiin" frameborder="0" allowfullscreen></iframe>
|
||||
<div class="yt"><iframe width="100%" height="100%" src="https://www.youtube.com/embed/?listType=playlist&list=PLn8PRpmsu08qFLMfgTEzR8DxOPE7fBiin" frameborder="0" allowfullscreen></iframe></div>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<iframe width="1280" height="720" src="https://www.youtube.com/embed/?listType=playlist&list=PLsjPUqcL7ZIFHCObUU_9xPUImZ203gB4o" frameborder="0" allowfullscreen></iframe>
|
||||
<div class="yt"><iframe width="100%" height="100%" src="https://www.youtube.com/embed/?listType=playlist&list=PLsjPUqcL7ZIFHCObUU_9xPUImZ203gB4o" frameborder="0" allowfullscreen></iframe></div>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: Dehaeze Thomas</p>
|
||||
<p class="date">Created: 2020-11-25 mer. 19:38</p>
|
||||
<p class="date">Created: 2020-11-27 ven. 18:20</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
Reference in New Issue
Block a user