From 86853e16463d4dd79b1668e98cfcb661b8c27f8f Mon Sep 17 00:00:00 2001 From: Thomas Dehaeze Date: Thu, 12 Mar 2020 18:06:56 +0100 Subject: [PATCH] Add analysis about cube size --- docs/active-damping.html | 71 ++-- docs/control-study.html | 140 +++---- docs/control-tracking.html | 596 +++++++++++++++++++++++------- docs/cubic-configuration.html | 135 ++++++- matlab/stewart_platform_model.slx | Bin 68701 -> 68693 bytes org/cubic-configuration.org | 69 +++- 6 files changed, 747 insertions(+), 264 deletions(-) diff --git a/docs/active-damping.html b/docs/active-damping.html index aac90f2..b5d9a85 100644 --- a/docs/active-damping.html +++ b/docs/active-damping.html @@ -4,7 +4,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Stewart Platform - Decentralized Active Damping @@ -249,25 +249,25 @@
  • 1. Inertial Control
  • 2. Integral Force Feedback
  • 3. Direct Velocity Feedback
  • 4. Compliance and Transmissibility Comparison @@ -366,8 +366,8 @@ The transfer function from actuator forces to force sensors is shown in Figure < -
    -

    1.2 Effect of the Flexible Joint stiffness and Actuator amplification on the Dynamics

    +
    +

    1.2 Effect of the Flexible Joint stiffness and Actuator amplification on the Dynamics

    We add some stiffness and damping in the flexible joints and we re-identify the dynamics. @@ -403,8 +403,8 @@ The new dynamics from force actuator to force sensor is shown in Figure

    -
    -

    1.3 Obtained Damping

    +
    -
    -

    1.4 Conclusion

    +
    +

    1.4 Conclusion

    @@ -461,8 +461,8 @@ To run the script, open the Simulink Project, and type run active_damping_

    -
    -

    2.1 Identification of the Dynamics with perfect Joints

    +
    +

    2.1 Identification of the Dynamics with perfect Joints

    We first initialize the Stewart platform without joint stiffness. @@ -520,8 +520,8 @@ The transfer function from actuator forces to force sensors is shown in Figure <

    -
    -

    2.2 Effect of the Flexible Joint stiffness and Actuator amplification on the Dynamics

    +
    +

    2.2 Effect of the Flexible Joint stiffness and Actuator amplification on the Dynamics

    We add some stiffness and damping in the flexible joints and we re-identify the dynamics. @@ -557,8 +557,8 @@ The new dynamics from force actuator to force sensor is shown in Figure

    -
    -

    2.3 Obtained Damping

    +
    -
    -

    2.4 Conclusion

    +
    +

    2.4 Conclusion

    @@ -623,8 +623,8 @@ To run the script, open the Simulink Project, and type run active_damping_

    -
    -

    3.1 Identification of the Dynamics with perfect Joints

    +
    +

    3.1 Identification of the Dynamics with perfect Joints

    We first initialize the Stewart platform without joint stiffness. @@ -687,8 +687,8 @@ The transfer function from actuator forces to relative motion sensors is shown i

    -
    -

    3.2 Effect of the Flexible Joint stiffness and Actuator amplification on the Dynamics

    +
    +

    3.2 Effect of the Flexible Joint stiffness and Actuator amplification on the Dynamics

    We add some stiffness and damping in the flexible joints and we re-identify the dynamics. @@ -724,8 +724,8 @@ The new dynamics from force actuator to relative motion sensor is shown in Figur

    -
    -

    3.3 Obtained Damping

    +
    +

    3.3 Obtained Damping

    The control is a performed in a decentralized manner. @@ -750,8 +750,8 @@ The root locus is shown in figure 10.

    -
    -

    3.4 Conclusion

    +
    +

    3.4 Conclusion

    @@ -762,6 +762,7 @@ Joint stiffness does increase the resonance frequencies of the system but does n

    +

    4 Compliance and Transmissibility Comparison

    @@ -867,7 +868,7 @@ K_dvf = 1e4*s/(1

    Author: Dehaeze Thomas

    -

    Created: 2020-03-02 lun. 17:57

    +

    Created: 2020-03-12 jeu. 18:06

    diff --git a/docs/control-study.html b/docs/control-study.html index 747a52f..7e8c10f 100644 --- a/docs/control-study.html +++ b/docs/control-study.html @@ -4,7 +4,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Stewart Platform - Vibration Isolation @@ -249,28 +249,28 @@
  • 1. HAC-LAC (Cascade) Control - Integral Control
    • 1.1. Introduction
    • -
    • 1.2. Initialization
    • -
    • 1.3. Identification +
    • 1.2. Initialization
    • +
    • 1.3. Identification
    • 1.4. Control Architecture
    • 1.5. 6x6 Plant Comparison
    • -
    • 1.6. HAC - DVF +
    • 1.6. HAC - DVF
    • -
    • 1.7. HAC - IFF +
    • 1.7. HAC - IFF
    • 1.8. Comparison
    • @@ -278,11 +278,11 @@
    • 2. MIMO Analysis
    • 2. Configuration with the Cube’s center above the mobile platform
    • 3. Cubic size analysis
    • 4. Dynamic Coupling in the Cartesian Frame
    • 5. Dynamic Coupling between actuators and sensors of each strut
    • 6. Functions @@ -826,8 +827,8 @@ stewart = initializeCylindricalPlatforms(stewart, 'Fpr' -
      -

      1.5 Conclusion

      +
      +

      1.5 Conclusion

      @@ -1164,9 +1165,100 @@ FOc = H + MO_B; % Cente

      -
      -

      2.2 Conclusion

      +
      +

      2.2 Size of the platforms

      +

      +The minimum size of the platforms depends on the cube’s size and the height between the platform and the cube’s center. +

      + +

      +Let’s denote: +

      +
        +
      • \(H\) the height between the cube’s center and the considered platform
      • +
      • \(D\) the size of the cube’s edges
      • +
      + +

      +Let’s denote by \(a\) and \(b\) the points of both ends of one of the cube’s edge. +

      + +

      +Initially, we have: +

      +\begin{align} + a &= \frac{D}{2} \begin{bmatrix}-1 \\ -1 \\ 1\end{bmatrix} \\ + b &= \frac{D}{2} \begin{bmatrix} 1 \\ -1 \\ 1\end{bmatrix} +\end{align} + +

      +We rotate the cube around its center (origin of the rotated frame) such that one of its diagonal is vertical. +\[ R = \begin{bmatrix} + \frac{2}{\sqrt{6}} & 0 & \frac{1}{\sqrt{3}} \\ + \frac{-1}{\sqrt{6}} & \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{3}} \\ + \frac{-1}{\sqrt{6}} & \frac{-1}{\sqrt{2}} & \frac{1}{\sqrt{3}} +\end{bmatrix} \] +

      + +

      +After rotation, the points \(a\) and \(b\) become: +

      +\begin{align} + a &= \frac{D}{2} \begin{bmatrix}-\frac{\sqrt{2}}{\sqrt{3}} \\ -\sqrt{2} \\ -\frac{1}{\sqrt{3}}\end{bmatrix} \\ + b &= \frac{D}{2} \begin{bmatrix} \frac{\sqrt{2}}{\sqrt{3}} \\ -\sqrt{2} \\ \frac{1}{\sqrt{3}}\end{bmatrix} +\end{align} + +

      +Points \(a\) and \(b\) define a vector \(u = b - a\) that gives the orientation of one of the Stewart platform strut: +\[ u = \frac{D}{\sqrt{3}} \begin{bmatrix} -\sqrt{2} \\ 0 \\ -1\end{bmatrix} \] +

      + +

      +Then we want to find the intersection between the line that defines the strut with the plane defined by the height \(H\) from the cube’s center. +To do so, we first find \(g\) such that: +\[ a_z + g u_z = -H \] +We obtain: +

      +\begin{align} + g &= - \frac{H + a_z}{u_z} \\ + &= \sqrt{3} \frac{H}{D} - \frac{1}{2} +\end{align} + +

      +Then, the intersection point \(P\) is given by: +

      +\begin{align} + P &= a + g u \\ + &= \begin{bmatrix} + H \sqrt{2} \\ + D \frac{1}{\sqrt{2}} \\ + H +\end{bmatrix} +\end{align} + +

      +Finally, the circle can contains the intersection point has a radius \(r\): +

      +\begin{align} + r &= \sqrt{P_x^2 + P_y^2} \\ + &= \sqrt{2 H^2 + \frac{1}{2}D^2} +\end{align} + +

      +By symmetry, we can show that all the other intersection points will also be on the circle with a radius \(r\). +

      + +

      +For a small cube: +\[ r \approx \sqrt{2} H \] +

      +
      +
      + +
      +

      2.3 Conclusion

      +

      We found that we can have a diagonal stiffness matrix using the cubic architecture when \(\{A\}\) and \(\{B\}\) are located above the top platform. @@ -1283,8 +1375,8 @@ We also find that \(k_{\theta_x} = k_{\theta_y}\) and \(k_{\theta_z}\) are varyi

      -
      -

      3.2 Conclusion

      +
      +

      3.2 Conclusion

      We observe that \(k_{\theta_x} = k_{\theta_y}\) and \(k_{\theta_z}\) increase linearly with the cube size. @@ -1653,8 +1745,8 @@ This was expected as the mass matrix is not diagonal (the Center of Mass of the

      -
      -

      4.3 Conclusion

      +
      +

      4.3 Conclusion

      @@ -1743,6 +1835,12 @@ controller = initializeController('type',

      +
      +
      disturbances = initializeDisturbances();
      +references = initializeReferences(stewart);
      +
      +
      +

      stewart_architecture_coupling_struts_cubic.png @@ -1838,8 +1936,8 @@ And we identify the dynamics from the actuator forces \(\tau_{i}\) to the relati

      -
      -

      5.3 Conclusion

      +
      +

      5.3 Conclusion

      @@ -1942,8 +2040,7 @@ H = stewart.geometry.H;

      We define the useful points of the cube with respect to the Cube’s center. -\({}^{C}C\) are the 6 vertices of the cubes expressed in a frame {C} which is -located at the center of the cube and aligned with {F} and {M}. +\({}^{C}C\) are the 6 vertices of the cubes expressed in a frame {C} which is located at the center of the cube and aligned with {F} and {M}.

      @@ -2019,7 +2116,7 @@ stewart.platform_M.Mb = Mb;

      Author: Dehaeze Thomas

      -

      Created: 2020-03-03 mar. 15:51

      +

      Created: 2020-03-12 jeu. 18:06

      diff --git a/matlab/stewart_platform_model.slx b/matlab/stewart_platform_model.slx index 7a17f244a1781a48e0efd3e5942563c2c665f65c..ea6498c92e3d5cc8459a4ec2752cd976f52c4137 100644 GIT binary patch delta 34810 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

      fqk(?H7 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 Dq-EFz delta 34888 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 ajL{(eVQy%^fJfM-^YJh`vdv)u1pxpJC{Hf{ diff --git a/org/cubic-configuration.org b/org/cubic-configuration.org index 812db57..941668e 100644 --- a/org/cubic-configuration.org +++ b/org/cubic-configuration.org @@ -484,6 +484,67 @@ However, the rotational stiffnesses are increasing with the cube's size but the | -8e-17 | 0 | -3e-17 | -6.1e-19 | 0.094 | 0 | | -6.2e-18 | 7.2e-17 | 5.6e-17 | 2.3e-17 | 0 | 0.37 | +** Size of the platforms +The minimum size of the platforms depends on the cube's size and the height between the platform and the cube's center. + +Let's denote: +- $H$ the height between the cube's center and the considered platform +- $D$ the size of the cube's edges + +Let's denote by $a$ and $b$ the points of both ends of one of the cube's edge. + +Initially, we have: +\begin{align} + a &= \frac{D}{2} \begin{bmatrix}-1 \\ -1 \\ 1\end{bmatrix} \\ + b &= \frac{D}{2} \begin{bmatrix} 1 \\ -1 \\ 1\end{bmatrix} +\end{align} + +We rotate the cube around its center (origin of the rotated frame) such that one of its diagonal is vertical. +\[ R = \begin{bmatrix} + \frac{2}{\sqrt{6}} & 0 & \frac{1}{\sqrt{3}} \\ + \frac{-1}{\sqrt{6}} & \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{3}} \\ + \frac{-1}{\sqrt{6}} & \frac{-1}{\sqrt{2}} & \frac{1}{\sqrt{3}} +\end{bmatrix} \] + +After rotation, the points $a$ and $b$ become: +\begin{align} + a &= \frac{D}{2} \begin{bmatrix}-\frac{\sqrt{2}}{\sqrt{3}} \\ -\sqrt{2} \\ -\frac{1}{\sqrt{3}}\end{bmatrix} \\ + b &= \frac{D}{2} \begin{bmatrix} \frac{\sqrt{2}}{\sqrt{3}} \\ -\sqrt{2} \\ \frac{1}{\sqrt{3}}\end{bmatrix} +\end{align} + +Points $a$ and $b$ define a vector $u = b - a$ that gives the orientation of one of the Stewart platform strut: +\[ u = \frac{D}{\sqrt{3}} \begin{bmatrix} -\sqrt{2} \\ 0 \\ -1\end{bmatrix} \] + +Then we want to find the intersection between the line that defines the strut with the plane defined by the height $H$ from the cube's center. +To do so, we first find $g$ such that: +\[ a_z + g u_z = -H \] +We obtain: +\begin{align} + g &= - \frac{H + a_z}{u_z} \\ + &= \sqrt{3} \frac{H}{D} - \frac{1}{2} +\end{align} + +Then, the intersection point $P$ is given by: +\begin{align} + P &= a + g u \\ + &= \begin{bmatrix} + H \sqrt{2} \\ + D \frac{1}{\sqrt{2}} \\ + H +\end{bmatrix} +\end{align} + +Finally, the circle can contains the intersection point has a radius $r$: +\begin{align} + r &= \sqrt{P_x^2 + P_y^2} \\ + &= \sqrt{2 H^2 + \frac{1}{2}D^2} +\end{align} + +By symmetry, we can show that all the other intersection points will also be on the circle with a radius $r$. + +For a small cube: +\[ r \approx \sqrt{2} H \] + ** Conclusion #+begin_important We found that we can have a diagonal stiffness matrix using the cubic architecture when $\{A\}$ and $\{B\}$ are located above the top platform. @@ -1119,6 +1180,11 @@ No flexibility below the Stewart platform and no payload. controller = initializeController('type', 'open-loop'); #+end_src +#+begin_src matlab + disturbances = initializeDisturbances(); + references = initializeReferences(stewart); +#+end_src + #+begin_src matlab :exports none displayArchitecture(stewart, 'labels', false, 'view', 'all'); #+end_src @@ -1509,8 +1575,7 @@ This Matlab function is accessible [[file:../src/generateCubicConfiguration.m][h :UNNUMBERED: t :END: We define the useful points of the cube with respect to the Cube's center. -${}^{C}C$ are the 6 vertices of the cubes expressed in a frame {C} which is -located at the center of the cube and aligned with {F} and {M}. +${}^{C}C$ are the 6 vertices of the cubes expressed in a frame {C} which is located at the center of the cube and aligned with {F} and {M}. #+begin_src matlab sx = [ 2; -1; -1];