From 5afaf494f6b43f39c33103fd5016d65de831bb8d Mon Sep 17 00:00:00 2001 From: Thomas Dehaeze Date: Fri, 18 Jan 2019 17:46:54 +0100 Subject: [PATCH] Add some analysis --- rotating_frame.html | 207 +++++++++++++++++++++++++------------------- rotating_frame.org | 58 +++++++++---- 2 files changed, 160 insertions(+), 105 deletions(-) diff --git a/rotating_frame.html b/rotating_frame.html index aefefeb..3c30a2c 100644 --- a/rotating_frame.html +++ b/rotating_frame.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Control in a rotating frame @@ -275,47 +275,49 @@ for the JavaScript code in this tag.

Table of Contents

-
-

1 Goal of this note

+
+

1 Goal of this note

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:

-
-

2 System

+
+

2 System

- +

-
-

2.1 System description

+
+

2.1 System description

-The system consists of one 2 degree of freedom translation stage on top of a spindle (figure 1). +The system consists of one 2 degree of freedom translation stage on top of a spindle (figure 1).

@@ -358,7 +360,7 @@ The measurement is either the \(x-y\) displacement of the object located on top

-
+

rotating_frame_2dof.png

Figure 1: Schematic of the mecanical system

@@ -392,22 +394,22 @@ Indices \(u\) and \(v\) corresponds to signals in the rotating reference frame (
-
-

2.2 Equations

+
+

2.2 Equations

- +

-Based on the figure 1, we can write the equations of motion of the system. +Based on the figure 1, we can write the equations of motion of the system.

Let's express the kinetic energy \(T\) and the potential energy \(V\) of the mass \(m\):

\begin{align} -\label{org25e6b9c} +\label{org4d9790f} T & = \frac{1}{2} m \left( \dot{x}^2 + \dot{y}^2 \right) \\ V & = \frac{1}{2} k \left( x^2 + y^2 \right) \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.

\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) \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:

\begin{align*} -\label{org02c8a0d} +\label{orgcf126c0} \frac{\partial L}{\partial x} & = -kx \\ \frac{\partial L}{\partial y} & = -ky \\ \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*}

-By appling the Lagrangian equations, we obtain equation \eqref{orgc6b5c7e}. +By appling the Lagrangian equations, we obtain:

\begin{align} -\label{orgc6b5c7e} m\ddot{x} + kx = F_u \cos{\theta} - F_v \sin{\theta}\\ m\ddot{y} + ky = F_u \sin{\theta} + F_v \cos{\theta} \end{align} @@ -468,7 +469,7 @@ We obtain: \end{align*}

-By injecting the previous result into the Lagrangian equation \eqref{orgc6b5c7e}, we obtain: +By injecting the previous result into the Lagrangian equation, we obtain:

\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} @@ -504,8 +505,8 @@ We can then subtract and add the previous equations to obtain the following equa
-
-

2.3 Analysis

+
+

2.3 TODO Analysis

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 centrifugal forces).

+ +
+

2.3.1 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} \] +

-
-

3 Analytical Computation of forces for the NASS

+
+

2.3.2 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\). +

+
+
+
+
+ +
+

3 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.

- -

-First we will determine the value for Euler and Coriolis forces during regular experiment. -

-
-

3.1 Euler and Coriolis forces

+
+

3.1 Parameters

Let's define the parameters for the NASS. @@ -554,12 +578,21 @@ d = 0.10.2; % [m/s]

+
+
+
+

3.2 Euler and Coriolis forces

+

-We then compute the corresponding values of the Coriolis and Euler forces, and the obtained values are displayed in table 1. +First we will determine the value for Euler and Coriolis forces during regular experiment.

- +

+We then compute the corresponding values of the Coriolis and Euler forces, and the obtained values are displayed in table 1. +

+ +
@@ -593,16 +626,16 @@ We then compute the corresponding values of the Coriolis and Euler forces, and t -
-

3.2 Spring Softening Effect

-
+
+

3.3 Negative Spring Effect

+

-The values for the spring softening effect are displayed in table 2. +The values for the negative spring effect are displayed in table 2. This is definitely negligible when using piezoelectric actuators. It may not be the case when using voice coil actuators.

-
Table 1: Euler and Coriolis forces for the NASS
- +
Table 2: Spring Softening effect
+@@ -620,7 +653,7 @@ This is definitely negligible when using piezoelectric actuators. It may not be - + @@ -630,15 +663,15 @@ This is definitely negligible when using piezoelectric actuators. It may not be -
-

4 Control Strategies

+
+

4 Control Strategies

- +

-
-

4.1 Measurement in the fixed reference frame

+
+

4.1 Measurement in the fixed reference 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

-The block diagram is shown on figure 2. +The block diagram is shown on figure 2.

-
+

control_measure_fixed_2dof.png

Figure 2: Control with a measure from fixed frame

@@ -674,31 +707,26 @@ The block diagram is shown on figure 2.

The loop gain is then \(L = G(\theta) K J(\theta)\).

-
-
-

4.1.1 QUESTION Is the loop gain is changing with the angle ?

-

-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)\)?

-
-
-

4.2 Measurement in the rotating frame

+
+

4.2 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 3 +The corresponding block diagram is shown figure 3

-
+

control_measure_rotating_2dof.png

Figure 3: Control with a measure from rotating frame

@@ -711,37 +739,38 @@ The loop gain is \(L = G K\).
-
-

5 Effect of the rotating Speed

+
+

5 Effect of the rotating Speed

- +

-
-

5.1 TODO Use realistic parameters for the mass of the sample and stiffness of the X-Y stage

+ +
+

5.1 TODO Use realistic parameters for the mass of the sample and stiffness of the X-Y stage

-
-

5.2 TODO Check if the plant is changing a lot when we are not turning to when we are turning at the maximum speed (60rpm)

+
+

5.2 TODO Check if the plant is changing a lot when we are not turning to when we are turning at the maximum speed (60rpm)

-
-

6 Effect of the X-Y stage stiffness

+
+

6 Effect of the X-Y stage stiffness

- +

-
-

6.1 TODO At full speed, check how the coupling changes with the stiffness of the actuators

+
+

6.1 TODO At full speed, check how the coupling changes with the stiffness of the actuators

Author: Thomas Dehaeze

-

Created: 2019-01-18 ven. 17:15

+

Created: 2019-01-18 ven. 17:46

Validate

diff --git a/rotating_frame.org b/rotating_frame.org index 9dc95d3..b07e538 100644 --- a/rotating_frame.org +++ b/rotating_frame.org @@ -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} \\ \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*} 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} @@ -137,7 +137,7 @@ We can then subtract and add the previous equations to obtain the following equa \end{align*} #+end_important -** Analysis +** TODO Analysis We obtain two differential equations that are coupled through: - *Euler forces*: $m d_v \ddot{\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$. 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 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. - -** Euler and Coriolis forces +** Parameters +#+begin_src matlab :exports none :results silent :noweb yes + <> +#+end_src Let's define the parameters for the NASS. #+begin_src matlab :exports code :results silent @@ -166,6 +178,9 @@ Let's define the parameters for the NASS. ddot = 0.2; % [m/s] #+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 Felight = mlight*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 | | Euler | 3.5 N | 8.5 N | -** Spring Softening Effect +** Negative Spring Effect #+begin_src matlab :exports none :results silent Klight = mlight*d*wdot^2; Kheavy = mheavy*d*wdot^2; #+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. #+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 -#+NAME: tab:spring_softening -#+CAPTION: Spring Softening effect +#+NAME: tab:negative_spring +#+CAPTION: Negative Spring effect #+RESULTS: -| | Light | Heavy | -|--------------+---------+---------| -| Spring Soft. | 3.5 N/m | 8.5 N/m | +| | Light | Heavy | +|-------------+---------+---------| +| Neg. Spring | 3.5 N/m | 8.5 N/m | * 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)$. -*** QUESTION Is the loop gain is changing with the angle ? -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)$? ** 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]] @@ -245,6 +259,11 @@ The loop gain is $L = G K$. * Effect of the rotating Speed <> + +#+begin_src matlab :exports none :results silent :noweb yes + <> +#+end_src + ** 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) @@ -262,7 +281,14 @@ The loop gain is $L = G K$. #+NAME: matlab-init #+BEGIN_SRC matlab :results none :exports none clear; close all; clc; + + %% Add path with some functions addpath('./src/'); + + %% Intialize Laplace variable + s = tf('s'); + + %% Initialize ans with org-babel ans = 0; #+END_SRC
Table 2: Negative Spring effect
Spring Soft.Neg. Spring 3.5 N/m 8.5 N/m