Add some analysis

This commit is contained in:
Thomas Dehaeze 2019-01-18 17:46:54 +01:00
parent 7447225dbe
commit 5afaf494f6
2 changed files with 160 additions and 105 deletions

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2019-01-18 ven. 17:15 --> <!-- 2019-01-18 ven. 17:46 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Control in a rotating frame</title> <title>Control in a rotating frame</title>
@ -275,47 +275,49 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2> <h2>Table of Contents</h2>
<div id="text-table-of-contents"> <div id="text-table-of-contents">
<ul> <ul>
<li><a href="#org8bd71db">1. Goal of this note</a></li> <li><a href="#org892e46e">1. Goal of this note</a></li>
<li><a href="#org6b844c0">2. System</a> <li><a href="#orgbb4d730">2. System</a>
<ul> <ul>
<li><a href="#org0e477c9">2.1. System description</a></li> <li><a href="#orgf6286ea">2.1. System description</a></li>
<li><a href="#org9d3f997">2.2. Equations</a></li> <li><a href="#org6517c3a">2.2. Equations</a></li>
<li><a href="#org813d43d">2.3. Analysis</a></li> <li><a href="#org66b66d3">2.3. <span class="todo TODO">TODO</span> Analysis</a>
<ul>
<li><a href="#org1aee292">2.3.1. Stiff actuators</a></li>
<li><a href="#org3d277ca">2.3.2. Negative Stiffness</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orge651676">3. Analytical Computation of forces for the NASS</a>
<ul>
<li><a href="#org94f7739">3.1. Euler and Coriolis forces</a></li>
<li><a href="#orgd457827">3.2. Spring Softening Effect</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org42269b2">4. Control Strategies</a> <li><a href="#org1d7bfef">3. Analytical Computation of forces for the NASS</a>
<ul> <ul>
<li><a href="#org05e6b53">4.1. Measurement in the fixed reference frame</a> <li><a href="#org9862d4d">3.1. Parameters</a></li>
<ul> <li><a href="#orged72531">3.2. Euler and Coriolis forces</a></li>
<li><a href="#org8c638be">4.1.1. <span class="todo QUESTION">QUESTION</span> Is the loop gain is changing with the angle ?</a></li> <li><a href="#org1ad22a2">3.3. Negative Spring Effect</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orgb6cb87b">4.2. Measurement in the rotating frame</a></li> <li><a href="#orgb20d1e2">4. Control Strategies</a>
<ul>
<li><a href="#org67681a1">4.1. Measurement in the fixed reference frame</a></li>
<li><a href="#org358433f">4.2. Measurement in the rotating frame</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org502caa6">5. Effect of the rotating Speed</a> <li><a href="#org403dcc8">5. Effect of the rotating Speed</a>
<ul> <ul>
<li><a href="#org2770fda">5.1. <span class="todo TODO">TODO</span> Use realistic parameters for the mass of the sample and stiffness of the X-Y stage</a></li> <li><a href="#orga27aa6d">5.1. <span class="todo TODO">TODO</span> Use realistic parameters for the mass of the sample and stiffness of the X-Y stage</a></li>
<li><a href="#orgc76e417">5.2. <span class="todo TODO">TODO</span> Check if the plant is changing a lot when we are not turning to when we are turning at the maximum speed (60rpm)</a></li> <li><a href="#org5b37262">5.2. <span class="todo TODO">TODO</span> Check if the plant is changing a lot when we are not turning to when we are turning at the maximum speed (60rpm)</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org07c8778">6. Effect of the X-Y stage stiffness</a> <li><a href="#org3eb9f54">6. Effect of the X-Y stage stiffness</a>
<ul> <ul>
<li><a href="#org038f2b3">6.1. <span class="todo TODO">TODO</span> At full speed, check how the coupling changes with the stiffness of the actuators</a></li> <li><a href="#org9fbd479">6.1. <span class="todo TODO">TODO</span> At full speed, check how the coupling changes with the stiffness of the actuators</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<div id="outline-container-org8bd71db" class="outline-2"> <div id="outline-container-org892e46e" class="outline-2">
<h2 id="org8bd71db"><span class="section-number-2">1</span> Goal of this note</h2> <h2 id="org892e46e"><span class="section-number-2">1</span> Goal of this note</h2>
<div class="outline-text-2" id="text-1"> <div class="outline-text-2" id="text-1">
<p> <p>
The control objective is to stabilize the position of a rotating object with respect to a non-rotating frame. The control objective is to stabilize the position of a rotating object with respect to a non-rotating frame.
@ -335,18 +337,18 @@ We want to compare the two different approach:
</div> </div>
</div> </div>
<div id="outline-container-org6b844c0" class="outline-2"> <div id="outline-container-orgbb4d730" class="outline-2">
<h2 id="org6b844c0"><span class="section-number-2">2</span> System</h2> <h2 id="orgbb4d730"><span class="section-number-2">2</span> System</h2>
<div class="outline-text-2" id="text-2"> <div class="outline-text-2" id="text-2">
<p> <p>
<a id="orgc894f87"></a> <a id="orgfb8b8b0"></a>
</p> </p>
</div> </div>
<div id="outline-container-org0e477c9" class="outline-3"> <div id="outline-container-orgf6286ea" class="outline-3">
<h3 id="org0e477c9"><span class="section-number-3">2.1</span> System description</h3> <h3 id="orgf6286ea"><span class="section-number-3">2.1</span> System description</h3>
<div class="outline-text-3" id="text-2-1"> <div class="outline-text-3" id="text-2-1">
<p> <p>
The system consists of one 2 degree of freedom translation stage on top of a spindle (figure <a href="#orgeadaa88">1</a>). The system consists of one 2 degree of freedom translation stage on top of a spindle (figure <a href="#org6527df8">1</a>).
</p> </p>
<p> <p>
@ -358,7 +360,7 @@ The measurement is either the \(x-y\) displacement of the object located on top
</p> </p>
<div id="orgeadaa88" class="figure"> <div id="org6527df8" class="figure">
<p><img src="./Figures/rotating_frame_2dof.png" alt="rotating_frame_2dof.png" /> <p><img src="./Figures/rotating_frame_2dof.png" alt="rotating_frame_2dof.png" />
</p> </p>
<p><span class="figure-number">Figure 1: </span>Schematic of the mecanical system</p> <p><span class="figure-number">Figure 1: </span>Schematic of the mecanical system</p>
@ -392,22 +394,22 @@ Indices \(u\) and \(v\) corresponds to signals in the rotating reference frame (
</div> </div>
</div> </div>
<div id="outline-container-org9d3f997" class="outline-3"> <div id="outline-container-org6517c3a" class="outline-3">
<h3 id="org9d3f997"><span class="section-number-3">2.2</span> Equations</h3> <h3 id="org6517c3a"><span class="section-number-3">2.2</span> Equations</h3>
<div class="outline-text-3" id="text-2-2"> <div class="outline-text-3" id="text-2-2">
<p> <p>
<a id="org52a8ecb"></a> <a id="orga34f88d"></a>
</p> </p>
<p> <p>
Based on the figure <a href="#orgeadaa88">1</a>, we can write the equations of motion of the system. Based on the figure <a href="#org6527df8">1</a>, we can write the equations of motion of the system.
</p> </p>
<p> <p>
Let's express the kinetic energy \(T\) and the potential energy \(V\) of the mass \(m\): Let's express the kinetic energy \(T\) and the potential energy \(V\) of the mass \(m\):
</p> </p>
\begin{align} \begin{align}
\label{org25e6b9c} \label{org4d9790f}
T & = \frac{1}{2} m \left( \dot{x}^2 + \dot{y}^2 \right) \\ T & = \frac{1}{2} m \left( \dot{x}^2 + \dot{y}^2 \right) \\
V & = \frac{1}{2} k \left( x^2 + y^2 \right) V & = \frac{1}{2} k \left( x^2 + y^2 \right)
\end{align} \end{align}
@ -416,7 +418,7 @@ V & = \frac{1}{2} k \left( x^2 + y^2 \right)
The Lagrangian is the kinetic energy minus the potential energy. The Lagrangian is the kinetic energy minus the potential energy.
</p> </p>
\begin{equation} \begin{equation}
\label{orgb6862e5} \label{orgb67b4fc}
L = T-V = \frac{1}{2} m \left( \dot{x}^2 + \dot{y}^2 \right) - \frac{1}{2} k \left( x^2 + y^2 \right) L = T-V = \frac{1}{2} m \left( \dot{x}^2 + \dot{y}^2 \right) - \frac{1}{2} k \left( x^2 + y^2 \right)
\end{equation} \end{equation}
@ -425,7 +427,7 @@ L = T-V = \frac{1}{2} m \left( \dot{x}^2 + \dot{y}^2 \right) - \frac{1}{2} k \le
The partial derivatives of the Lagrangian with respect to the variables \((x, y)\) are: The partial derivatives of the Lagrangian with respect to the variables \((x, y)\) are:
</p> </p>
\begin{align*} \begin{align*}
\label{org02c8a0d} \label{orgcf126c0}
\frac{\partial L}{\partial x} & = -kx \\ \frac{\partial L}{\partial x} & = -kx \\
\frac{\partial L}{\partial y} & = -ky \\ \frac{\partial L}{\partial y} & = -ky \\
\frac{d}{dt}\frac{\partial L}{\partial \dot{x}} & = m\ddot{x} \\ \frac{d}{dt}\frac{\partial L}{\partial \dot{x}} & = m\ddot{x} \\
@ -441,10 +443,9 @@ F_{\text{ext}, y} &= F_u \sin{\theta} + F_v \cos{\theta}
\end{align*} \end{align*}
<p> <p>
By appling the Lagrangian equations, we obtain equation \eqref{orgc6b5c7e}. By appling the Lagrangian equations, we obtain:
</p> </p>
\begin{align} \begin{align}
\label{orgc6b5c7e}
m\ddot{x} + kx = F_u \cos{\theta} - F_v \sin{\theta}\\ m\ddot{x} + kx = F_u \cos{\theta} - F_v \sin{\theta}\\
m\ddot{y} + ky = F_u \sin{\theta} + F_v \cos{\theta} m\ddot{y} + ky = F_u \sin{\theta} + F_v \cos{\theta}
\end{align} \end{align}
@ -468,7 +469,7 @@ We obtain:
\end{align*} \end{align*}
<p> <p>
By injecting the previous result into the Lagrangian equation \eqref{orgc6b5c7e}, we obtain: By injecting the previous result into the Lagrangian equation, we obtain:
</p> </p>
\begin{align*} \begin{align*}
m \ddot{d_u} \cos{\theta} - 2m\dot{d_u}\dot{\theta}\sin{\theta} - m d_u\ddot{\theta}\sin{\theta} - m d_u\dot{\theta}^2 \cos{\theta} m \ddot{d_u} \cos{\theta} - 2m\dot{d_u}\dot{\theta}\sin{\theta} - m d_u\ddot{\theta}\sin{\theta} - m d_u\dot{\theta}^2 \cos{\theta}
@ -504,8 +505,8 @@ We can then subtract and add the previous equations to obtain the following equa
</div> </div>
</div> </div>
<div id="outline-container-org813d43d" class="outline-3"> <div id="outline-container-org66b66d3" class="outline-3">
<h3 id="org813d43d"><span class="section-number-3">2.3</span> Analysis</h3> <h3 id="org66b66d3"><span class="section-number-3">2.3</span> <span class="todo TODO">TODO</span> Analysis</h3>
<div class="outline-text-3" id="text-2-3"> <div class="outline-text-3" id="text-2-3">
<p> <p>
We obtain two differential equations that are coupled through: We obtain two differential equations that are coupled through:
@ -520,23 +521,46 @@ Without the coupling terms, each equation is the equation of a one degree of fre
Thus, the term \(-d_u m\dot{\theta}^2\) acts like a negative stiffness (due to <b>centrifugal forces</b>). Thus, the term \(-d_u m\dot{\theta}^2\) acts like a negative stiffness (due to <b>centrifugal forces</b>).
</p> </p>
</div> </div>
<div id="outline-container-org1aee292" class="outline-4">
<h4 id="org1aee292"><span class="section-number-4">2.3.1</span> Stiff actuators</h4>
<div class="outline-text-4" id="text-2-3-1">
<p>
Let's say we use stiff actuators such that \(m \ddot{d_u} + (k - m\dot{\theta}^2) d_u \approx k d_u\).
</p>
<p>
Let's suppose that \(F_u + 2 m\dot{d_v}\dot{\theta} + m d_v\ddot{\theta} \approx F_u\).
</p>
<p>
Then we obtain \(d_u = \frac{F_u}{k}\) that we can re inject in the other equation to obtain:
\[ m \ddot{d_v} + (k - m\dot{\theta}^2) d_v &= F_v - 2 m\frac{\dot{F_u}}{k}\dot{\theta} - m \frac{F_u}{k}\ddot{\theta} \]
</p>
</div> </div>
</div> </div>
<div id="outline-container-orge651676" class="outline-2"> <div id="outline-container-org3d277ca" class="outline-4">
<h2 id="orge651676"><span class="section-number-2">3</span> Analytical Computation of forces for the NASS</h2> <h4 id="org3d277ca"><span class="section-number-4">2.3.2</span> Negative Stiffness</h4>
<div class="outline-text-4" id="text-2-3-2">
<p>
If \(\max{\dot{\theta}} \ll \sqrt{\frac{k}{m}}\), then the negative spring effect is negligible and \(k - m\dot{\theta}^2 \approx k\).
</p>
</div>
</div>
</div>
</div>
<div id="outline-container-org1d7bfef" class="outline-2">
<h2 id="org1d7bfef"><span class="section-number-2">3</span> Analytical Computation of forces for the NASS</h2>
<div class="outline-text-2" id="text-3"> <div class="outline-text-2" id="text-3">
<p> <p>
For the NASS, the Euler forces should be less of a problem as \(\ddot{\theta}\) should be very small when conducting an experiment. For the NASS, the Euler forces should be less of a problem as \(\ddot{\theta}\) should be very small when conducting an experiment.
</p> </p>
<p>
First we will determine the value for Euler and Coriolis forces during regular experiment.
</p>
</div> </div>
<div id="outline-container-org94f7739" class="outline-3"> <div id="outline-container-org9862d4d" class="outline-3">
<h3 id="org94f7739"><span class="section-number-3">3.1</span> Euler and Coriolis forces</h3> <h3 id="org9862d4d"><span class="section-number-3">3.1</span> Parameters</h3>
<div class="outline-text-3" id="text-3-1"> <div class="outline-text-3" id="text-3-1">
<p> <p>
Let's define the parameters for the NASS. Let's define the parameters for the NASS.
@ -554,12 +578,21 @@ d = <span style="color: #D0372D;">0</span>.<span style="color: #D0372D;">1</span
ddot = <span style="color: #D0372D;">0</span>.<span style="color: #D0372D;">2</span>; <span style="color: #8D8D84; font-style: italic;">% [m/s]</span> ddot = <span style="color: #D0372D;">0</span>.<span style="color: #D0372D;">2</span>; <span style="color: #8D8D84; font-style: italic;">% [m/s]</span>
</pre> </pre>
</div> </div>
</div>
</div>
<div id="outline-container-orged72531" class="outline-3">
<h3 id="orged72531"><span class="section-number-3">3.2</span> Euler and Coriolis forces</h3>
<div class="outline-text-3" id="text-3-2">
<p> <p>
We then compute the corresponding values of the Coriolis and Euler forces, and the obtained values are displayed in table <a href="#org11a5df8">1</a>. First we will determine the value for Euler and Coriolis forces during regular experiment.
</p> </p>
<table id="org11a5df8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <p>
We then compute the corresponding values of the Coriolis and Euler forces, and the obtained values are displayed in table <a href="#orgae713d9">1</a>.
</p>
<table id="orgae713d9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<caption class="t-above"><span class="table-number">Table 1:</span> Euler and Coriolis forces for the NASS</caption> <caption class="t-above"><span class="table-number">Table 1:</span> Euler and Coriolis forces for the NASS</caption>
<colgroup> <colgroup>
@ -593,16 +626,16 @@ We then compute the corresponding values of the Coriolis and Euler forces, and t
</div> </div>
</div> </div>
<div id="outline-container-orgd457827" class="outline-3"> <div id="outline-container-org1ad22a2" class="outline-3">
<h3 id="orgd457827"><span class="section-number-3">3.2</span> Spring Softening Effect</h3> <h3 id="org1ad22a2"><span class="section-number-3">3.3</span> Negative Spring Effect</h3>
<div class="outline-text-3" id="text-3-2"> <div class="outline-text-3" id="text-3-3">
<p> <p>
The values for the spring softening effect are displayed in table <a href="#org76af8f7">2</a>. The values for the negative spring effect are displayed in table <a href="#org7244d2d">2</a>.
This is definitely negligible when using piezoelectric actuators. It may not be the case when using voice coil actuators. This is definitely negligible when using piezoelectric actuators. It may not be the case when using voice coil actuators.
</p> </p>
<table id="org76af8f7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <table id="org7244d2d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<caption class="t-above"><span class="table-number">Table 2:</span> Spring Softening effect</caption> <caption class="t-above"><span class="table-number">Table 2:</span> Negative Spring effect</caption>
<colgroup> <colgroup>
<col class="org-left" /> <col class="org-left" />
@ -620,7 +653,7 @@ This is definitely negligible when using piezoelectric actuators. It may not be
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td class="org-left">Spring Soft.</td> <td class="org-left">Neg. Spring</td>
<td class="org-left">3.5 N/m</td> <td class="org-left">3.5 N/m</td>
<td class="org-left">8.5 N/m</td> <td class="org-left">8.5 N/m</td>
</tr> </tr>
@ -630,15 +663,15 @@ This is definitely negligible when using piezoelectric actuators. It may not be
</div> </div>
</div> </div>
<div id="outline-container-org42269b2" class="outline-2"> <div id="outline-container-orgb20d1e2" class="outline-2">
<h2 id="org42269b2"><span class="section-number-2">4</span> Control Strategies</h2> <h2 id="orgb20d1e2"><span class="section-number-2">4</span> Control Strategies</h2>
<div class="outline-text-2" id="text-4"> <div class="outline-text-2" id="text-4">
<p> <p>
<a id="org25db234"></a> <a id="orgec63a1f"></a>
</p> </p>
</div> </div>
<div id="outline-container-org05e6b53" class="outline-3"> <div id="outline-container-org67681a1" class="outline-3">
<h3 id="org05e6b53"><span class="section-number-3">4.1</span> Measurement in the fixed reference frame</h3> <h3 id="org67681a1"><span class="section-number-3">4.1</span> Measurement in the fixed reference frame</h3>
<div class="outline-text-3" id="text-4-1"> <div class="outline-text-3" id="text-4-1">
<p> <p>
First, let's consider a measurement in the fixed referenced frame. First, let's consider a measurement in the fixed referenced frame.
@ -661,11 +694,11 @@ Finally, the control low \(K\) links the position errors \([\epsilon_u, \epsilon
</p> </p>
<p> <p>
The block diagram is shown on figure <a href="#orgbae56a5">2</a>. The block diagram is shown on figure <a href="#org4869ac5">2</a>.
</p> </p>
<div id="orgbae56a5" class="figure"> <div id="org4869ac5" class="figure">
<p><img src="./Figures/control_measure_fixed_2dof.png" alt="control_measure_fixed_2dof.png" /> <p><img src="./Figures/control_measure_fixed_2dof.png" alt="control_measure_fixed_2dof.png" />
</p> </p>
<p><span class="figure-number">Figure 2: </span>Control with a measure from fixed frame</p> <p><span class="figure-number">Figure 2: </span>Control with a measure from fixed frame</p>
@ -674,31 +707,26 @@ The block diagram is shown on figure <a href="#orgbae56a5">2</a>.
<p> <p>
The loop gain is then \(L = G(\theta) K J(\theta)\). The loop gain is then \(L = G(\theta) K J(\theta)\).
</p> </p>
</div>
<div id="outline-container-org8c638be" class="outline-4">
<h4 id="org8c638be"><span class="section-number-4">4.1.1</span> <span class="todo QUESTION">QUESTION</span> Is the loop gain is changing with the angle ?</h4>
<div class="outline-text-4" id="text-4-1-1">
<p> <p>
Is \[ G(\theta) J(\theta) = G(\theta_0) J(\theta_0) \] ? One question we wish to answer is: is \(G(\theta) J(\theta) = G(\theta_0) J(\theta_0)\)?
</p> </p>
</div> </div>
</div> </div>
</div>
<div id="outline-container-orgb6cb87b" class="outline-3"> <div id="outline-container-org358433f" class="outline-3">
<h3 id="orgb6cb87b"><span class="section-number-3">4.2</span> Measurement in the rotating frame</h3> <h3 id="org358433f"><span class="section-number-3">4.2</span> Measurement in the rotating frame</h3>
<div class="outline-text-3" id="text-4-2"> <div class="outline-text-3" id="text-4-2">
<p> <p>
Let's consider that the measurement is in the rotating reference frame. Let's consider that the measurement is made in the rotating reference frame.
</p> </p>
<p> <p>
The corresponding block diagram is shown figure <a href="#org33df600">3</a> The corresponding block diagram is shown figure <a href="#org781b9ae">3</a>
</p> </p>
<div id="org33df600" class="figure"> <div id="org781b9ae" class="figure">
<p><img src="./Figures/control_measure_rotating_2dof.png" alt="control_measure_rotating_2dof.png" /> <p><img src="./Figures/control_measure_rotating_2dof.png" alt="control_measure_rotating_2dof.png" />
</p> </p>
<p><span class="figure-number">Figure 3: </span>Control with a measure from rotating frame</p> <p><span class="figure-number">Figure 3: </span>Control with a measure from rotating frame</p>
@ -711,37 +739,38 @@ The loop gain is \(L = G K\).
</div> </div>
</div> </div>
<div id="outline-container-org502caa6" class="outline-2"> <div id="outline-container-org403dcc8" class="outline-2">
<h2 id="org502caa6"><span class="section-number-2">5</span> Effect of the rotating Speed</h2> <h2 id="org403dcc8"><span class="section-number-2">5</span> Effect of the rotating Speed</h2>
<div class="outline-text-2" id="text-5"> <div class="outline-text-2" id="text-5">
<p> <p>
<a id="org389e858"></a> <a id="org6624b66"></a>
</p> </p>
</div> </div>
<div id="outline-container-org2770fda" class="outline-3">
<h3 id="org2770fda"><span class="section-number-3">5.1</span> <span class="todo TODO">TODO</span> Use realistic parameters for the mass of the sample and stiffness of the X-Y stage</h3> <div id="outline-container-orga27aa6d" class="outline-3">
<h3 id="orga27aa6d"><span class="section-number-3">5.1</span> <span class="todo TODO">TODO</span> Use realistic parameters for the mass of the sample and stiffness of the X-Y stage</h3>
</div> </div>
<div id="outline-container-orgc76e417" class="outline-3"> <div id="outline-container-org5b37262" class="outline-3">
<h3 id="orgc76e417"><span class="section-number-3">5.2</span> <span class="todo TODO">TODO</span> Check if the plant is changing a lot when we are not turning to when we are turning at the maximum speed (60rpm)</h3> <h3 id="org5b37262"><span class="section-number-3">5.2</span> <span class="todo TODO">TODO</span> Check if the plant is changing a lot when we are not turning to when we are turning at the maximum speed (60rpm)</h3>
</div> </div>
</div> </div>
<div id="outline-container-org07c8778" class="outline-2"> <div id="outline-container-org3eb9f54" class="outline-2">
<h2 id="org07c8778"><span class="section-number-2">6</span> Effect of the X-Y stage stiffness</h2> <h2 id="org3eb9f54"><span class="section-number-2">6</span> Effect of the X-Y stage stiffness</h2>
<div class="outline-text-2" id="text-6"> <div class="outline-text-2" id="text-6">
<p> <p>
<a id="org99e68c1"></a> <a id="org8208f86"></a>
</p> </p>
</div> </div>
<div id="outline-container-org038f2b3" class="outline-3"> <div id="outline-container-org9fbd479" class="outline-3">
<h3 id="org038f2b3"><span class="section-number-3">6.1</span> <span class="todo TODO">TODO</span> At full speed, check how the coupling changes with the stiffness of the actuators</h3> <h3 id="org9fbd479"><span class="section-number-3">6.1</span> <span class="todo TODO">TODO</span> At full speed, check how the coupling changes with the stiffness of the actuators</h3>
</div> </div>
</div> </div>
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Thomas Dehaeze</p> <p class="author">Author: Thomas Dehaeze</p>
<p class="date">Created: 2019-01-18 ven. 17:15</p> <p class="date">Created: 2019-01-18 ven. 17:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p> <p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div> </div>
</body> </body>

View File

@ -109,7 +109,7 @@ We obtain:
+ \ddot{d_v} \cos{\theta} - 2\dot{d_v}\dot{\theta}\sin{\theta} - d_v\ddot{\theta}\sin{\theta} - d_v\dot{\theta}^2 \cos{\theta} \\ + \ddot{d_v} \cos{\theta} - 2\dot{d_v}\dot{\theta}\sin{\theta} - d_v\ddot{\theta}\sin{\theta} - d_v\dot{\theta}^2 \cos{\theta} \\
\end{align*} \end{align*}
By injecting the previous result into the Lagrangian equation [[eq:lagrangian_eq_inertial]], we obtain: By injecting the previous result into the Lagrangian equation, we obtain:
\begin{align*} \begin{align*}
m \ddot{d_u} \cos{\theta} - 2m\dot{d_u}\dot{\theta}\sin{\theta} - m d_u\ddot{\theta}\sin{\theta} - m d_u\dot{\theta}^2 \cos{\theta} m \ddot{d_u} \cos{\theta} - 2m\dot{d_u}\dot{\theta}\sin{\theta} - m d_u\ddot{\theta}\sin{\theta} - m d_u\dot{\theta}^2 \cos{\theta}
-m \ddot{d_v} \sin{\theta} - 2m\dot{d_v}\dot{\theta}\cos{\theta} - m d_v\ddot{\theta}\cos{\theta} + m d_v\dot{\theta}^2 \sin{\theta} -m \ddot{d_v} \sin{\theta} - 2m\dot{d_v}\dot{\theta}\cos{\theta} - m d_v\ddot{\theta}\cos{\theta} + m d_v\dot{\theta}^2 \sin{\theta}
@ -137,7 +137,7 @@ We can then subtract and add the previous equations to obtain the following equa
\end{align*} \end{align*}
#+end_important #+end_important
** Analysis ** TODO Analysis
We obtain two differential equations that are coupled through: We obtain two differential equations that are coupled through:
- *Euler forces*: $m d_v \ddot{\theta}$ - *Euler forces*: $m d_v \ddot{\theta}$
- *Coriolis forces*: $2 m \dot{d_v} \dot{\theta}$ - *Coriolis forces*: $2 m \dot{d_v} \dot{\theta}$
@ -145,12 +145,24 @@ We obtain two differential equations that are coupled through:
Without the coupling terms, each equation is the equation of a one degree of freedom mass-spring system with mass $m$ and stiffness $k-d_u m\dot{\theta}^2$. Without the coupling terms, each equation is the equation of a one degree of freedom mass-spring system with mass $m$ and stiffness $k-d_u m\dot{\theta}^2$.
Thus, the term $-d_u m\dot{\theta}^2$ acts like a negative stiffness (due to *centrifugal forces*). Thus, the term $-d_u m\dot{\theta}^2$ acts like a negative stiffness (due to *centrifugal forces*).
*** Stiff actuators
Let's say we use stiff actuators such that $m \ddot{d_u} + (k - m\dot{\theta}^2) d_u \approx k d_u$.
Let's suppose that $F_u + 2 m\dot{d_v}\dot{\theta} + m d_v\ddot{\theta} \approx F_u$.
Then we obtain $d_u = \frac{F_u}{k}$ that we can re inject in the other equation to obtain:
\[ m \ddot{d_v} + (k - m\dot{\theta}^2) d_v &= F_v - 2 m\frac{\dot{F_u}}{k}\dot{\theta} - m \frac{F_u}{k}\ddot{\theta} \]
*** Negative Stiffness
If $\max{\dot{\theta}} \ll \sqrt{\frac{k}{m}}$, then the negative spring effect is negligible and $k - m\dot{\theta}^2 \approx k$.
* Analytical Computation of forces for the NASS * Analytical Computation of forces for the NASS
For the NASS, the Euler forces should be less of a problem as $\ddot{\theta}$ should be very small when conducting an experiment. For the NASS, the Euler forces should be less of a problem as $\ddot{\theta}$ should be very small when conducting an experiment.
First we will determine the value for Euler and Coriolis forces during regular experiment. ** Parameters
#+begin_src matlab :exports none :results silent :noweb yes
** Euler and Coriolis forces <<matlab-init>>
#+end_src
Let's define the parameters for the NASS. Let's define the parameters for the NASS.
#+begin_src matlab :exports code :results silent #+begin_src matlab :exports code :results silent
@ -166,6 +178,9 @@ Let's define the parameters for the NASS.
ddot = 0.2; % [m/s] ddot = 0.2; % [m/s]
#+end_src #+end_src
** Euler and Coriolis forces
First we will determine the value for Euler and Coriolis forces during regular experiment.
#+begin_src matlab :exports none :results silent #+begin_src matlab :exports none :results silent
Felight = mlight*d*wdot; Felight = mlight*d*wdot;
Feheavy = mheavy*d*wdot; Feheavy = mheavy*d*wdot;
@ -188,25 +203,25 @@ We then compute the corresponding values of the Coriolis and Euler forces, and t
| Coriolis | 44.0 N | 1.8 N | | Coriolis | 44.0 N | 1.8 N |
| Euler | 3.5 N | 8.5 N | | Euler | 3.5 N | 8.5 N |
** Spring Softening Effect ** Negative Spring Effect
#+begin_src matlab :exports none :results silent #+begin_src matlab :exports none :results silent
Klight = mlight*d*wdot^2; Klight = mlight*d*wdot^2;
Kheavy = mheavy*d*wdot^2; Kheavy = mheavy*d*wdot^2;
#+end_src #+end_src
The values for the spring softening effect are displayed in table [[tab:spring_softening]]. The values for the negative spring effect are displayed in table [[tab:negative_spring]].
This is definitely negligible when using piezoelectric actuators. It may not be the case when using voice coil actuators. This is definitely negligible when using piezoelectric actuators. It may not be the case when using voice coil actuators.
#+begin_src matlab :results value table :exports results :post addhdr(*this*) #+begin_src matlab :results value table :exports results :post addhdr(*this*)
ans = sprintf(' | Light | Heavy | \n Spring Soft. | %.1f N/m | %.1f N/m', Klight, Kheavy) ans = sprintf(' | Light | Heavy | \n Neg. Spring | %.1f N/m | %.1f N/m', Klight, Kheavy)
#+end_src #+end_src
#+NAME: tab:spring_softening #+NAME: tab:negative_spring
#+CAPTION: Spring Softening effect #+CAPTION: Negative Spring effect
#+RESULTS: #+RESULTS:
| | Light | Heavy | | | Light | Heavy |
|--------------+---------+---------| |-------------+---------+---------|
| Spring Soft. | 3.5 N/m | 8.5 N/m | | Neg. Spring | 3.5 N/m | 8.5 N/m |
* Control Strategies * Control Strategies
<<sec:control_strategies>> <<sec:control_strategies>>
@ -229,11 +244,10 @@ The block diagram is shown on figure [[fig:control_measure_fixed_2dof]].
The loop gain is then $L = G(\theta) K J(\theta)$. The loop gain is then $L = G(\theta) K J(\theta)$.
*** QUESTION Is the loop gain is changing with the angle ? One question we wish to answer is: is $G(\theta) J(\theta) = G(\theta_0) J(\theta_0)$?
Is \[ G(\theta) J(\theta) = G(\theta_0) J(\theta_0) \] ?
** Measurement in the rotating frame ** Measurement in the rotating frame
Let's consider that the measurement is in the rotating reference frame. Let's consider that the measurement is made in the rotating reference frame.
The corresponding block diagram is shown figure [[fig:control_measure_rotating_2dof]] The corresponding block diagram is shown figure [[fig:control_measure_rotating_2dof]]
@ -245,6 +259,11 @@ The loop gain is $L = G K$.
* Effect of the rotating Speed * Effect of the rotating Speed
<<sec:effect_rot_speed>> <<sec:effect_rot_speed>>
#+begin_src matlab :exports none :results silent :noweb yes
<<matlab-init>>
#+end_src
** TODO Use realistic parameters for the mass of the sample and stiffness of the X-Y stage ** TODO Use realistic parameters for the mass of the sample and stiffness of the X-Y stage
** TODO Check if the plant is changing a lot when we are not turning to when we are turning at the maximum speed (60rpm) ** TODO Check if the plant is changing a lot when we are not turning to when we are turning at the maximum speed (60rpm)
@ -262,7 +281,14 @@ The loop gain is $L = G K$.
#+NAME: matlab-init #+NAME: matlab-init
#+BEGIN_SRC matlab :results none :exports none #+BEGIN_SRC matlab :results none :exports none
clear; close all; clc; clear; close all; clc;
%% Add path with some functions
addpath('./src/'); addpath('./src/');
%% Intialize Laplace variable
s = tf('s');
%% Initialize ans with org-babel
ans = 0; ans = 0;
#+END_SRC #+END_SRC