From 72c9afb29f87ce1124bffb762d69f50d7e0ba8b8 Mon Sep 17 00:00:00 2001 From: Thomas Dehaeze Date: Thu, 12 Dec 2019 12:49:03 +0100 Subject: [PATCH] minor changes --- index.html | 64 +++++++++++++++++-------------------- index.org | 2 -- kinematics/index.html | 58 ++++++++++++++++----------------- kinematics/index.org | 2 +- positioning_error/index.org | 6 ++-- 5 files changed, 63 insertions(+), 69 deletions(-) diff --git a/index.html b/index.html index c751ae0..7be9ac2 100644 --- a/index.html +++ b/index.html @@ -258,16 +258,16 @@ for the JavaScript code in this tag.

Table of Contents

@@ -276,12 +276,8 @@ for the JavaScript code in this tag. Here are links to the documents related to the Simscape model of the Nano-Active-Stabilization-System.

-

-test -

- -
-

1 Simulink Project (link)

+
+

1 Simulink Project (link)

The project is managed with a Simulink Project. @@ -290,8 +286,8 @@ Such project is briefly presented here

-
-

2 Simscape Model (link)

+
+

2 Simscape Model (link)

The model of the NASS is based on Simulink and Simscape Multi-Body. @@ -300,8 +296,8 @@ Such toolbox is presented here.

-
-

3 Simscape Subsystems (link)

+
+

3 Simscape Subsystems (link)

The model is decomposed of multiple subsystems. @@ -315,8 +311,8 @@ All these subsystems are described he

-
-

4 Kinematics of the Station (link)

+
+

4 Kinematics of the Station (link)

First, we consider perfectly rigid elements and joints and we just study the kinematic of the station. @@ -326,8 +322,8 @@ This is detailed here.

-
-

5 Metrology (link)

+
+

5 Metrology (link)

In this document (accessible here), we discuss the measurement of the sample with respect to the granite. @@ -335,8 +331,8 @@ In this document (accessible here), we disc

-
-

6 Computation of the positioning error of the Sample (link)

+
+

6 Computation of the positioning error of the Sample (link)

From the measurement of the position of the sample with respect to the granite and from the wanted position of each stage, we can compute the positioning error of the sample with respect to the nano-hexapod. @@ -345,8 +341,8 @@ This is done here.

-
-

7 Tuning of the Dynamics of the Simscape model (link)

+
+

7 Tuning of the Dynamics of the Simscape model (link)

From dynamical measurements perform on the real positioning station, we tune the parameters of the simscape model to have similar dynamics. @@ -358,8 +354,8 @@ This is explained here.

-
-

8 Disturbances (link)

+
+

8 Disturbances (link)

The effect of disturbances on the position of the micro-station have been measured. @@ -376,8 +372,8 @@ We also discuss how the disturbances are implemented in the model.

-
-

9 Tomography Experiment (link)

+
+

9 Tomography Experiment (link)

Now that the dynamics of the Model have been tuned and the Disturbances have included, we can simulate experiments. @@ -389,8 +385,8 @@ Tomography experiments are simulated and the results are presented -

10 Useful Matlab Functions (link)

+
+

10 Useful Matlab Functions (link)

Many matlab functions are shared among all the files of the projects. diff --git a/index.org b/index.org index b17137c..8a2ac1c 100644 --- a/index.org +++ b/index.org @@ -43,8 +43,6 @@ Here are links to the documents related to the Simscape model of the Nano-Active-Stabilization-System. -[[file:../stewart-simscape/index.org][test]] - * Simulink Project ([[./simulink_project/index.org][link]]) The project is managed with a Simulink Project. Such project is briefly presented [[./simulink_project/index.org][here]]. diff --git a/kinematics/index.html b/kinematics/index.html index d882ad3..6a07f96 100644 --- a/kinematics/index.html +++ b/kinematics/index.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Kinematics of the station @@ -283,16 +283,16 @@ for the JavaScript code in this tag.

Table of Contents

    -
  • 1. Micro Hexapod +
  • 1. Micro Hexapod
      -
    • 1.1. How the Symetrie Hexapod is controlled on the micro station
    • -
    • 1.2. Control of the Micro-Hexapod using Simscape +
    • 1.1. How the Symetrie Hexapod is controlled on the micro station
    • +
    • 1.2. Control of the Micro-Hexapod using Simscape @@ -307,12 +307,12 @@ for the JavaScript code in this tag. In this document, we discuss the way the motion of each stage is defined.

      -
      -

      1 Micro Hexapod

      +
      +

      1 Micro Hexapod

      -
      -

      1.1 How the Symetrie Hexapod is controlled on the micro station

      +
      +

      1.1 How the Symetrie Hexapod is controlled on the micro station

      For the Micro-Hexapod, the convention for the angles are defined in MAN_A_Software API_4.0.150918_EN.pdf on page 13 (section 2.4 - Rotation Vectors): @@ -360,8 +360,8 @@ Thus, it does the translations and then the rotation around the new translated f

      -
      -

      1.2 Control of the Micro-Hexapod using Simscape

      +
      +

      1.2 Control of the Micro-Hexapod using Simscape

      We can think of two main ways to position the Micro-Hexapod using Simscape. @@ -378,15 +378,15 @@ This require a little bit more of mathematical derivations but this is the chose

      -
      -

      1.2.1 Using Bushing Joint

      +
      +

      1.2.1 Using Bushing Joint

      -In the documentation of the Bushing Joint (doc "Bushing Joint") that is used to position the Hexapods, it is mention that the following frame is positioned with respect to the base frame in a way shown in figure 1. +In the documentation of the Bushing Joint (doc "Bushing Joint") that is used to position the Hexapods, it is mention that the following frame is positioned with respect to the base frame in a way shown in figure 1.

      -
      +

      bushing_joint_transform.png

      Figure 1: Joint Transformation Sequence for the Bushing Joint

      @@ -404,8 +404,8 @@ However, the Bushing Joint makes rotations around mobiles axes (X, Y' and then Z
      -
      -

      1.2.2 Using Inverse Kinematics and Leg Actuators

      +
      +

      1.2.2 Using Inverse Kinematics and Leg Actuators

      Here, we can use the Inverse Kinematic of the Hexapod to determine the length of each leg in order to obtain some defined translation and rotation of the mobile platform. @@ -431,8 +431,8 @@ Thus, for this simulation, we remove the gravity.

      -
      -
      1.2.2.1 Theory
      +
      +
      1.2.2.1 Theory

      For inverse kinematic analysis, it is assumed that the position \({}^A\bm{P}\) and orientation of the moving platform \({}^A\bm{R}_B\) are given and the problem is to obtain the joint variables, namely, \(\bm{L} = [l_1, l_2, \dots, l_6]^T\). @@ -443,7 +443,7 @@ From the geometry of the manipulator, the loop closure for each limb, \(i = 1, 2

      \begin{align*} l_i {}^A\hat{\bm{s}}_i &= {}^A\bm{A} + {}^A\bm{b}_i - {}^A\bm{a}_i \\ - &= {}^A\bm{A} + {}^A\bm{R}_b {}^B\bm{b}_i - {}^A\bm{a}_i + &= {}^A\bm{A} + {}^A\bm{R}_b {}^B\bm{b}_i - {}^A\bm{a}_i \end{align*}

      @@ -467,14 +467,14 @@ Otherwise, when the limbs' lengths derived yield complex numbers, then the posit

      -
      -
      1.2.2.2 Matlab Implementation
      +
      +
      1.2.2.2 Matlab Implementation

      We open the Simulink file.

      -
      open 'simscape/hexapod_tests.slx'
      +
      open('kinematics/matlab/hexapod_tests.slx')
       
      @@ -482,7 +482,7 @@ We open the Simulink file. We load the configuration and set a small StopTime.

      -
      load('simscape/conf_simscape.mat');
      +
      load('mat/conf_simscape.mat');
       set_param(conf_simscape, 'StopTime', '0.5');
       
      @@ -518,7 +518,7 @@ hexapod = initializeMicroHexapod(
      -
      sim('simscape/hexapod_tests.slx')
      +
      sim('hexapod_tests')
       
      @@ -594,7 +594,7 @@ And we verify that we indeed succeed to go to the wanted position.

      Author: Dehaeze Thomas

      -

      Created: 2019-12-11 mer. 14:47

      +

      Created: 2019-12-12 jeu. 11:39

      Validate

      diff --git a/kinematics/index.org b/kinematics/index.org index 30baca8..cedb38a 100644 --- a/kinematics/index.org +++ b/kinematics/index.org @@ -182,7 +182,7 @@ We define the wanted position/orientation of the Hexapod under study. We run the simulation. #+begin_src matlab - sim('hexapod_tests.slx') + sim('hexapod_tests') #+end_src And we verify that we indeed succeed to go to the wanted position. diff --git a/positioning_error/index.org b/positioning_error/index.org index 2192af8..068273c 100644 --- a/positioning_error/index.org +++ b/positioning_error/index.org @@ -160,7 +160,7 @@ No position error for now (perfect positioning). And we run the simulation. #+begin_src matlab - sim('sim_nano_station_metrology.slx'); + sim('sim_nano_station_metrology'); #+end_src ** Verify that the pose of the sample is the same as the computed one @@ -308,7 +308,7 @@ Now we introduce some positioning error. And we run the simulation. #+begin_src matlab - sim('sim_nano_station_metrology.slx'); + sim('sim_nano_station_metrology'); #+end_src ** Compute the wanted pose of the sample in the NASS Base from the metrology and the reference @@ -407,7 +407,7 @@ We now keep the wanted pose but we impose a displacement of the nano hexapod cor And we run the simulation. #+begin_src matlab - sim('sim_nano_station_metrology.slx'); + sim('sim_nano_station_metrology'); #+end_src We keep the old computed computed reference pose ${}^W\bm{T}_r$ even though we have change the nano hexapod reference, but this is not a real wanted reference but rather a adaptation to reject the positioning errors.