Rework optimal hexapod geometry

This commit is contained in:
Thomas Dehaeze 2020-05-05 17:50:57 +02:00
parent 9410feeec4
commit fa5055c6b5
9 changed files with 1455 additions and 761 deletions

BIN
figs/nano_hexapod_size.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

1701
index.html

File diff suppressed because it is too large Load Diff

515
index.org
View File

@ -304,9 +304,14 @@ An alternative definition of the Cumulative Power Spectrum can be used where the
\end{equation}
And thus $CPS_x(f)$ represents the power in the signal $x$ for frequencies above $f$.
The cumulative
The Cumulative Power Spectrum is generally shown as a function of frequency, and is used to identify the critical modes in a design, at which the effort should be targeted.
It can also helps to determine at which frequencies the effect of disturbances must be reduced, and thus the approximate required control bandwidth.
The Cumulative Power Spectrum is generally shown as a function of frequency, and is used to determine at which frequencies the effect of disturbances must be reduced, and thus the approximate required control bandwidth.
A typical Cumulative Power Spectrum is shown in figure [[fig:preumont18_cas_plot]].
#+name: fig:preumont18_cas_plot
#+caption: Cumulative Power Spectrum in open-loop and closed-loop for increasing gains (taken from cite:preumont18_vibrat_contr_activ_struc_fourt_edition)
[[file:figs/preumont18_cas_plot.png]]
*** Modification of a signal's PSD when going through a dynamical system
<<sec:psd_lti_system>>
@ -746,7 +751,7 @@ To do so, several computations are performed (summarized in Figure [[fig:control
More details about these computations are accessible [[https://tdehaeze.github.io/nass-simscape/positioning_error.html][here]].
** Simulation of Experiments
** Simulation of a Tomography Experiment
<<sec:micro_station_simulation>>
Now that the dynamics of the model is tuned and the disturbances included in the model, simulations of experiments can be performed.
@ -806,20 +811,54 @@ In the next sections, it will allows to optimally design the nano-hexapod, to de
** Introduction :ignore:
As explain before, the nano-hexapod properties (mass, stiffness, legs' orientation, ...) will influence:
- the effect of disturbances $G_d$ (important for the rejection of disturbances)
- the plant dynamics $G$ (important for the control robustness properties)
- the effect of disturbances
- the plant dynamics
Thus, we here wish to find the optimal nano-hexapod properties such that:
- the effect of disturbances is minimized (Section [[sec:optimal_stiff_dist]])
- the plant uncertainty due to a change of payload mass and experimental conditions is minimized (Section [[sec:optimal_stiff_plant]])
- the plant has nice dynamical properties for control (Section [[sec:nano_hexapod_architecture]])
In this study, the effect of the nano-hexapod's mass characteristics is not taken into account because:
1. it cannot be changed a lot
2. it is quite negligible compare the to metrology reflector and the payload's masses that is fixed to nano-hexapod's top platform
In this study, the effect of the nano-hexapod's mass characteristics is not taken into account because it cannot be changed a lot and it is quite negligible compare the to metrology reflector and the payload's masses that are fixed to nano-hexapod's top platform.
Also, the effect of the nano-hexapod's damping properties will be studied when applying active damping techniques.
** A brief introduction to Stewart Platforms
<<sec:stewart_platform>>
A typical Stewart platform is composed of two platforms connected by six identical struts (or legs) composed of:
- a universal joint at one end
- a spherical joint at the other end
- a prismatic joint with an associated actuator
This is very schematically shown in Figure [[fig:stewart_architecture_example]] where the $a_i$ are the location of the joints connected to the fixed platform and the $b_i$ are the joints connected to the mobile platform.
#+name: fig:stewart_architecture_example
#+caption: Schematic representation of a Stewart platform
[[file:figs/stewart_architecture_example.png]]
As shows in Figure [[fig:stewart_architecture_example]], two frames $\{A\}$ and $\{B\}$ are virtually fixed to respectively the bottom and the top platforms.
These frames are used to describe the relative motion of the two platforms through the position vector ${}^A\bm{P}_B$ of $\{B\}$ expressed in $\{A\}$ and the rotation matrix ${}^A\bm{R}_B$ expressing the orientation of $\{B\}$ with respect to $\{A\}$.
For the nano-hexapod, these frames are chosen to be located at the theoretical center of the spherical metrology reflector.
Since the Stewart platform has six-degrees-of-freedom and six actuators, it is called a /fully parallel/ manipulator.
A change in the length of the legs $\bm{\mathcal{L}} = \left[ l_1, l_2, l_3, l_4, l_5, l_6 \right]^T$ will induce a motion of the mobile platform with respect to the fixed platform as shown in Figure [[fig:stewart_architecture_example_pose]].
The relation between a change in length of the legs and the relative motion of the platforms is studied thanks to the kinematic analysis, which is explained in Section [[sec:nano_hexapod_architecture]].
#+name: fig:stewart_architecture_example_pose
#+caption: Display of the Stewart platform architecture at some defined pose
[[file:figs/stewart_architecture_example_pose.png]]
The Stewart Platform is very adapted for the NASS application for the following reasons:
- it is a fully parallel manipulator, thus all the motions errors can be compensated
- it is very compact compared to a serial manipulator
- it has high stiffness and good dynamic performances
The main disadvantage of Stewart platforms is the small workspace when compare the serial manipulators which is not a problem here.
A Matlab toolbox to study and design Stewart Platforms has been developed and used for the design of the nano-hexapod.
The source code is accessible [[https://github.com/tdehaeze/stewart-simscape][here]] and the documentation [[https://tdehaeze.github.io/stewart-simscape/][here]].
** Optimal Stiffness to reduce the effect of disturbances
<<sec:optimal_stiff_dist>>
@ -827,7 +866,7 @@ Also, the effect of the nano-hexapod's damping properties will be studied when a
As will be seen, the nano-hexapod stiffness have a large influence on the sensibility to disturbance (the norm of $G_d$).
For instance, it is quite obvious that a stiff nano-hexapod is better than a soft one when it comes to direct forces applied to the sample such as cable forces.
A complete study of the optimal nano-hexapod stiffness for the minimization of disturbance sensibility [[https://tdehaeze.github.io/nass-simscape/optimal_stiffness_disturbances.html][here]] and summarized below.
A study of the optimal nano-hexapod stiffness for the minimization of disturbance sensibility is accessible [[https://tdehaeze.github.io/nass-simscape/optimal_stiffness_disturbances.html][here]] and summarized below.
*** Sensibility to stage vibrations
:PROPERTIES:
@ -835,8 +874,8 @@ A complete study of the optimal nano-hexapod stiffness for the minimization of d
:END:
The sensibility to the spindle's vibration for all the considered nano-hexapod stiffnesses (from $10^3\,[N/m]$ to $10^9\,[N/m]$) is shown in Figure [[fig:opt_stiff_sensitivity_Frz]].
It is shown that a softer nano-hexapod it better to filter out vertical vibrations of the spindle.
More precisely, is start to filters the vibration at the first suspension mode of the payload on top of the nano-hexapod.
It is shown that a softer nano-hexapod is better to filter out vertical vibrations of the spindle.
More precisely, the nano-hexapod filters out the vibration starting at the first suspension mode of the payload on top of the nano-hexapod.
The same conclusion is made for vibrations of the translation stage.
@ -849,9 +888,9 @@ The same conclusion is made for vibrations of the translation stage.
:UNNUMBERED: t
:END:
The sensibilities to ground motion in the Y and Z directions are shown in Figure [[fig:opt_stiff_sensitivity_Dw]].
We can see that above the suspension mode of the nano-hexapod, the norm of the transmissibility is close to one until the suspension mode of the granite.
Thus, a stiff nano-hexapod is better for reducing the effect of ground motion at low frequency.
The sensibility to ground motion in the Y and Z directions is shown in Figure [[fig:opt_stiff_sensitivity_Dw]].
Above the suspension mode of the nano-hexapod, the norm of the transmissibility is close to one until the suspension mode of the granite.
Thus, a stiff nano-hexapod ($k>10^5\,[N/m]$) is better for reducing the effect of ground motion at low frequency.
It will be suggested in Section [[sec:soft_granite]] that using soft mounts for the granite can greatly lower the sensibility to ground motion.
@ -864,8 +903,15 @@ It will be suggested in Section [[sec:soft_granite]] that using soft mounts for
:UNNUMBERED: t
:END:
However, lowering the sensibility to some disturbance at a frequency where its effect is already small compare to the other disturbances sources is not really interesting.
What is more important than comparing the sensitivity to disturbances, is thus to compare the obtain power spectral density of the sample's position error.
Looking at the change of sensibility with the nano-hexapod's stiffness helps understand the physics of the system.
It however, does not permit to estimate the optimal stiffness that will lower the motion error due to disturbances.
To do so, the power spectral density of the disturbances should be taken into account, as the sensibility of one disturbance should be reduced only where the PSD of the considered disturbance is large compared to the other disturbances.
What is more important than comparing the sensitivity to disturbances, is to compare the resulting open-loop power spectral density of the sample's position error with the change of the nano-hexapod's stiffness.
This is the *dynamic noise budgeting*.
From the Power Spectral Density of all the sources of disturbances identified in Section [[sec:identification_disturbances]], we compute what would be the Power Spectral Density of the vertical motion error for all the considered nano-hexapod stiffnesses (Figure [[fig:opt_stiff_psd_dz_tot]]).
We can see that the most important change is in the frequency range 30Hz to 300Hz where a stiffness smaller than $10^5\,[N/m]$ greatly reduces the sample's vibrations.
@ -874,8 +920,13 @@ We can see that the most important change is in the frequency range 30Hz to 300H
#+caption: Amplitude Spectral Density of the Sample vertical position error due to Vertical vibration of the Spindle for multiple nano-hexapod stiffnesses
[[file:figs/opt_stiff_psd_dz_tot.png]]
*** Conclusion
:PROPERTIES:
:UNNUMBERED: t
:END:
#+begin_important
If we look at the Cumulative amplitude spectrum of the vertical error motion in Figure [[fig:opt_stiff_cas_dz_tot]], we can observe that a soft hexapod ($k < 10^5 - 10^6\,[N/m]$) helps reducing the high frequency disturbances, and thus a smaller control bandwidth will suffice to obtain the wanted performance.
If we look at the Cumulative amplitude spectrum of the vertical error motion in Figure [[fig:opt_stiff_cas_dz_tot]], we can observe that a soft hexapod ($k < 10^5 - 10^6\,[N/m]$) helps reducing the high frequency disturbances, and thus a smaller control bandwidth will be required to obtain the wanted performance.
#+end_important
#+name: fig:opt_stiff_cas_dz_tot
@ -890,16 +941,15 @@ One of the most important design goal is to obtain a system that is *robust* to
Therefore, we have to identify all changes that might occurs in the system and choose the nano-hexapod stiffness such that the uncertainty to these changes is minimized.
The uncertainty in the system can be caused by:
- A change in the *Support's compliance* (complete analysis [[https://tdehaeze.github.io/nass-simscape/uncertainty_support.html][here]]): if the micro-station dynamics is changing due to the change of parts or just because of aging effects, the feedback system should remains stable and the obtained performance should not change
- A change in the *Support's compliance* (complete analysis [[https://tdehaeze.github.io/nass-simscape/uncertainty_support.html][here]]): if the micro-station dynamics is changing due to the change of mechanical parts or just because of aging effects, the feedback system should remains stable and the obtained performance should not change
- A change in the *Payload mass/dynamics* (complete analysis [[https://tdehaeze.github.io/nass-simscape/uncertainty_payload.html][here]]): the sample's mass is ranging from $1\,kg$ to $50\,kg$
- A change of *experimental condition* such as the micro-station's pose or the spindle rotation (complete analysis [[https://tdehaeze.github.io/nass-simscape/uncertainty_experiment.html][here]])
- A change of *experimental condition* such as the micro-station's pose or the spindle rotation speed (complete analysis [[https://tdehaeze.github.io/nass-simscape/uncertainty_experiment.html][here]])
Because of the trade-off between robustness and performance, the bigger the plant dynamic uncertainty, the lower the simultaneous attainable performance is for all the plants.
Thus, all these uncertainties will limit the attainable bandwidth and hence the obtained performance.
Because of the trade-off between robustness and performance, *the bigger the plant dynamic uncertainty, the lower the attainable performance will be for all the system changes*.
In the next sections, the effect the considered changes on the *plant dynamics* is quantified and conclusions are made on the optimal stiffness for robustness properties.
In the next sections, the effect the considered changes on the *plant dynamics* is quantified and conclusions are drawn on the optimal stiffness for robustness properties.
In the following study, when we refer to plant dynamics, this means the dynamics from forces applied by the nano-hexapod to the measured sample's position by the metrology.
In the following study, when we refer to /plant dynamics/, this means the dynamics from forces applied by the nano-hexapod to the measured sample's position by the metrology.
We will only compare the plant dynamics as it is the most important dynamics for robustness and performance properties.
However, the dynamics from forces to sensors located in the nano-hexapod legs, such as force and relative motion sensors, have also been considered in a separate study.
@ -910,16 +960,20 @@ However, the dynamics from forces to sensors located in the nano-hexapod legs, s
The most obvious change in the system is the change of payload.
In Figure [[fig:opt_stiffness_payload_mass_fz_dz]] the dynamics is shown for payloads having a first resonance mode at 100Hz and a mass equal to 1kg, 20kg and 50kg.
In Figure [[fig:opt_stiffness_payload_mass_fz_dz]] the dynamics is shown for payloads with a mass equal to 1kg, 20kg and 50kg (the resonance of the payload is fixed to 100Hz).
On the left side, the change of dynamics is computed for a very soft nano-hexapod, while on the right side, it is computed for a very stiff nano-hexapod.
One can see that for the soft nano-hexapod:
- the first resonance (suspension mode of the nano-hexapod) is lowered with an increase of the sample's mass.
This first resonance corresponds to $\omega = \sqrt{\frac{k_n}{m_n + m_s}}$ where $k_n$ is the vertical nano-hexapod stiffness, $m_n$ the mass of the nano-hexapod's top platform, and $m_s$ the sample's mass
- the gain after the first resonance and up until the anti-resonance at 100Hz is changing with the sample's mass
This is very logical as the first resonance corresponds to $\omega = \sqrt{\frac{k_n}{m_n + m_s}}$ where $k_n$ is the vertical nano-hexapod stiffness, $m_n$ the mass of the nano-hexapod's top platform, and $m_s$ the sample's mass
- the gain after the first resonance and up until the anti-resonance at 100Hz is changing with the sample's mass.
It is indeed equal to $\frac{1}{(m_n + m_s) \omega^2}$
For the stiff-nano-hexapod, the change of payload mass has very little effect (the vertical scale for the amplitude is quite small).
To minimize the uncertainty to the payload's mass, the mass of the nano-hexapod's top platform plus the metrology reflector should be maximized, and ideally close to the maximum payload's mass.
As the maximum payload's mass is $50\,kg$, this may however not be practical, and thus the control architecture must be developed to be robust to a change of the payload's mass.
#+name: fig:opt_stiffness_payload_mass_fz_dz
#+caption: Dynamics from $\mathcal{F}_z$ to $\mathcal{X}_z$ for varying payload mass, both for a soft nano-hexapod (left) and a stiff nano-hexapod (right)
[[file:figs/opt_stiffness_payload_mass_fz_dz.png]]
@ -933,17 +987,16 @@ We can see (more easily for the soft nano-hexapod), that resonance of the payloa
#+caption: Dynamics from $\mathcal{F}_z$ to $\mathcal{X}_z$ for varying payload resonance frequency, both for a soft nano-hexapod and a stiff nano-hexapod
[[file:figs/opt_stiffness_payload_freq_fz_dz.png]]
The dynamics for all the payloads (mass from 1kg to 50kg and first resonance from 50Hz to 500Hz) and all the considered nano-hexapod stiffnesses are display in Figure [[fig:opt_stiffness_payload_impedance_all_fz_dz]].
For nano-hexapod stiffnesses below $10^6\,[N/m]$:
- the phase stays between 0 and -180deg which is a very nice property for control
- the dynamical change up until the resonance of the payload is mostly a change of gain
- the dynamical change up until the resonance of the payload can be considered as a change of gain
For nano-hexapod stiffnesses above $10^7\,[N/m]$:
- the dynamics is unchanged until the first resonance which is around 25Hz-35Hz
- above that frequency, the change of dynamics is quite chaotic (we will see in the next section that this is due to the micro-station dynamics)
- above that frequency, the change of dynamics is quite chaotic (we will see in the next section that this is due to the micro-station dynamics) and it would be difficult to have a controller with high bandwidth which is robust to such change of dynamics
#+name: fig:opt_stiffness_payload_impedance_all_fz_dz
#+caption: Dynamics from $\mathcal{F}_z$ to $\mathcal{X}_z$ for varying payload dynamics, both for a soft nano-hexapod and a stiff nano-hexapod
@ -951,14 +1004,13 @@ For nano-hexapod stiffnesses above $10^7\,[N/m]$:
#+begin_important
For soft nano-hexapods, the payload has an important impact on the dynamics.
This will have to be carefully taken into account for the controller design.
For soft nano-hexapods, the payload has an important impact on the dynamics that will have to be carefully taken into account for the controller design.
For stiff nano-hexapod, the dynamics doe not change with the payload until the first resonance frequency of the nano-hexapod or of the payload.
If possible, the first resonance frequency of the payload should be maximized (stiff fixation).
Heavy samples with low first resonance mode will be very problematic.
Heavy samples with low first resonance mode will be the most problematic.
#+end_important
*** Effect of Micro-Station Compliance
@ -970,7 +1022,7 @@ The micro-station dynamics is quite complex as was shown in Section [[sec:micro_
- a change in some mechanical elements
- a change in the position of one stage.
For instance, a large displacement of the micro-hexapod can change the micro-station compliance
- a change in a control loop
- a change in a control loop of some of its stage
Thus, it would be much more robust if the plant dynamics were not depending on the micro-station dynamics.
@ -979,8 +1031,8 @@ This as several other advantages:
- the nano-hexapod could be use on top of any other station much more easily
To identify the effect of the micro-station compliance on the system dynamics, for each nano-hexapod stiffness, we identify the plant dynamics in two different case (Figure [[fig:opt_stiffness_micro_station_fx_dx]]):
- without the micro-station (solid curves)
To identify the effect of the micro-station compliance on the system dynamics, the plant dynamics is identified in two different cases (Figure [[fig:opt_stiffness_micro_station_fx_dx]]):
- with a micro-station considered as a solid body (solid curves)
- with the micro-station dynamics (dashed curves)
One can see that for nano-hexapod stiffnesses below $10^6\,[N/m]$, the plant dynamics does not significantly changed due to the micro station dynamics (the solid and dashed curves are superimposed).
@ -1005,12 +1057,15 @@ If a stiff nano-hexapod is used, the control bandwidth should probably be limite
Let's now consider the rotation of the Spindle.
The plant dynamics for spindle rotation speed from 0rpm up to 60rpm are shown in Figure [[fig:opt_stiffness_wz_fx_dx]].
The plant dynamics for spindle rotation speed varying from 0rpm up to 60rpm are identified and shown in Figure [[fig:opt_stiffness_wz_fx_dx]].
One can see that for nano-hexapods with a stiffness above $10^5\,[N/m]$, the dynamics is mostly not changing with the spindle's rotating speed.
For very soft nano-hexapods, the main resonance is split into two resonances and one anti-resonance that are all moving at a function of the rotating speed.
The change of dynamics is due to both centrifugal forces and Coriolis forces.
This effect has been studied in details in [[https://tdehaeze.github.io/rotating-frame/index.html][this]] document.
#+name: fig:opt_stiffness_wz_fx_dx
#+caption: Change of dynamics from force $\mathcal{F}_x$ to displacement $\mathcal{X}_x$ for a spindle rotation speed from 0rpm to 60rpm
[[file:figs/opt_stiffness_wz_fx_dx.png]]
@ -1026,69 +1081,89 @@ A very soft ($k < 10^4\,[N/m]$) nano-hexapod should not be used due to the effec
:UNNUMBERED: t
:END:
Finally, let's combined all the uncertainties and display the plant dynamics "spread" for all the nano-hexapod stiffnesses (Figure [[fig:opt_stiffness_plant_dynamics_task_space]]).
Finally, let's combined all the uncertainties and display the "spread" of the plant dynamics for all the nano-hexapod stiffnesses (Figure [[fig:opt_stiffness_plant_dynamics_task_space]]).
This show how the dynamics evolves with the stiffness and how different effects enters the plant dynamics.
#+name: fig:opt_stiffness_plant_dynamics_task_space
#+caption: Variability of the dynamics from $\bm{\mathcal{F}}_x$ to $\bm{\mathcal{X}}_x$ with varying nano-hexapod stiffness
[[file:figs/opt_stiffness_plant_dynamics_task_space.gif]]
*** Conclusion
:PROPERTIES:
:UNNUMBERED: t
:END:
#+begin_important
Let's summarize the findings:
- the payload's mass influence the plant dynamics above the first resonance of the nano-hexapod.
Let's summarize the findings about the effect of the nano-hexapod's stiffness on the plant uncertainty:
- The payload's mass influence the plant dynamics above the first resonance of the nano-hexapod.
Thus a high nano-hexapod stiffness helps reducing the effect of a change of the payload's mass
- the payload's first resonance is seen as an anti-resonance in the plant dynamics.
As this effect will largely be variable from one payload to the other, *the payload's first resonance should be maximized* (above 300Hz if possible) for all used payloads
- the dynamics of the nano-hexapod is not affected by the micro-station dynamics (compliance) when $k < 10^6\,[N/m]$
- the spindle's rotating speed has no significant influence on the plant dynamics for nano-hexapods with a stiffness $k > 10^5\,[N/m]$
- The payload's first resonance is seen as an anti-resonance in the plant dynamics.
As this effect will largely be variable from one payload to the other, thus *the payload's first resonance should be maximized* (above 300Hz if possible) for all used payloads
- The dynamics of the nano-hexapod is not affected by the micro-station dynamics (compliance) if $k < 10^6\,[N/m]$
- The spindle's rotating speed has no significant influence on the plant dynamics for nano-hexapod's stiffnesses $k > 10^5\,[N/m]$
Concerning the plant dynamic uncertainty, the resonance frequency of the nano-hexapod should be between 5Hz (way above the maximum rotating speed) and 50Hz (before the first micro-station resonance) for all the considered payloads.
This corresponds to an optimal nano-hexapod leg stiffness in the range $10^5 - 10^6\,[N/m]$.
In such case, the main limitation will be heavy samples with small stiffnesses.
The *resonance frequency of the nano-hexapod should be between 5Hz* (way above the maximum rotating speed) *and 50Hz* (before the first micro-station resonance) for all the considered payloads.
This corresponds to an *optimal nano-hexapod leg stiffness in the range* $10^5 - 10^6\,[N/m]$.
#+end_important
** Optimal Nano-Hexapod Geometry
<<sec:nano_hexapod_architecture>>
*** Introduction :ignore:
As will be shown in this section, the Nano-Hexapod geometry has an influence on:
- the overall stiffness/compliance
Stewart platforms can be studied with:
- *Kinematic analysis*: study of the geometry of motion without considering the forces and torques that cause the motion
- *Jacobian analysis*: reveals the relation between the actuators velocities and the moving platform linear and angular velocities. It also constructs the transformation between actuator forces and task space forces
and moments acting on the moving platform.
- *Dynamic analysis*: consists of the equations of motion for the manipulator which are quite complex to derive
Kinematic and Jacobian analysis are briefly introduced in this section, however the dynamic analysis is not performed analytically but rather studied using the Simscape model.
As will be shown, the Nano-Hexapod geometry has an influence on:
- the stiffness and compliance properties
- the mobility
- the dynamics and coupling
- the force authority
- the dynamics of the manipulator
A typical Stewart platform is composed of six identical legs:
- a universal joint
- a spherical joint
- a prismatic joint with an integrated actuator
#+name: fig:stewart_architecture_example
#+caption: Figure caption
[[file:figs/stewart_architecture_example.png]]
#+name: fig:stewart_architecture_example_pose
#+caption: Display of the Stewart platform architecture at some defined pose
[[file:figs/stewart_architecture_example_pose.png]]
*** Kinematic Analysis and the Jacobian Matrix
*** Kinematic Analysis
:PROPERTIES:
:UNNUMBERED: t
:END:
The kinematic analysis of a parallel manipulator is well described in cite:taghirad13_paral:
The Kinematic analysis of the Stewart platform can be divided into two problems: the inverse kinematics and the forward kinematics.
#+begin_quote
Kinematic analysis refers to the study of the geometry of motion of a robot, without considering the forces an torques that cause the motion.
In this analysis, the relation between the geometrical parameters of the manipulator with the final motion of the moving platform is derived and analyzed.
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 $\bm{\mathcal{L}} = \left[ l_1, l_2, l_3, l_4, l_5, l_6 \right]^T$.
#+end_quote
One of the main analysis tool for the Kinematic analysis is the *Jacobian Matrix* that not only reveals the *relation between the joint variable velocities of a parallel manipulator to the moving platform linear and angular velocities*, but also constructs the transformation needed to find the *actuator forces from the forces and moments acting on the moving platform*.
The Jacobian matrix $\bm{J}$ can be computed form the orientation of the legs (describes by the unit vectors ${}^A\hat{\bm{s}}_i$) and the position of the flexible joints (described by the position vectors ${}^A\bm{b}_i$):
This problem can be easily solved, and the obtain joint variables are:
\begin{equation*}
\begin{aligned}
l_i = &\Big[ {}^A\bm{P}^T {}^A\bm{P} + {}^B\bm{b}_i^T {}^B\bm{b}_i + {}^A\bm{a}_i^T {}^A\bm{a}_i - 2 {}^A\bm{P}^T {}^A\bm{a}_i + \dots\\
&2 {}^A\bm{P}^T \left[{}^A\bm{R}_B {}^B\bm{b}_i\right] - 2 \left[{}^A\bm{R}_B {}^B\bm{b}_i\right]^T {}^A\bm{a}_i \Big]^{1/2}
\end{aligned}
\end{equation*}
If the position and orientation of the platform lie in the feasible workspace, the solution is unique.
Otherwise, the solution gives complex numbers.
This means that from the wanted position of the nano-hexapod's mobile platform with respect to the fixed platform (described by ${}^A\bm{P}$ and ${}^A\bm{R}_B$) and for a specific geometry (position of the top joints $^{B}\bm{b}$ and bottom joints ${}^A\bm{a}$), the required motion of each leg can easily be determined.
#+begin_quote
In *forward kinematic analysis*, it is assumed that the vector of limb lengths $\bm{L}$ is given and the problem is to find the position ${}^A\bm{P}$ and the orientation ${}^A\bm{R}_B$.
#+end_quote
This is a difficult problem that requires to solve nonlinear equations.
However, as will be shown in the next section, approximate solution of the forward kinematic analysis can be obtained thanks to the Jacobian analysis.
*** Jacobian Analysis
:PROPERTIES:
:UNNUMBERED: t
:END:
The Jacobian matrix $\bm{J}$ can be computed form the *orientation of the legs* (describes by the unit vectors ${}^A\hat{\bm{s}}_i$) and the *position of the top joints* (described by the position vectors ${}^A\bm{b}_i$) both expressed in the frame $\{A\}$:
\begin{equation}
\bm{J} = \begin{bmatrix}
{\hat{\bm{s}}_1}^T & (\bm{b}_1 \times \hat{\bm{s}}_1)^T \\
{\hat{\bm{s}}_2}^T & (\bm{b}_2 \times \hat{\bm{s}}_2)^T \\
@ -1097,25 +1172,31 @@ The Jacobian matrix $\bm{J}$ can be computed form the orientation of the legs (d
{\hat{\bm{s}}_5}^T & (\bm{b}_5 \times \hat{\bm{s}}_5)^T \\
{\hat{\bm{s}}_6}^T & (\bm{b}_6 \times \hat{\bm{s}}_6)^T
\end{bmatrix}
\end{equation*}
\end{equation}
It can be easily shown that:
It can be shown that the Jacobian matrix reveals the *relation between the legs' velocities to the moving platform linear and angular velocities*:
\begin{equation}
\delta\bm{\mathcal{L}} = \bm{J} \delta\bm{\mathcal{X}}, \quad \delta\bm{\mathcal{X}} = \bm{J}^{-1} \delta\bm{\mathcal{L}} \label{eq:jacobian_L}
\dot{\bm{\mathcal{L}}} = \bm{J} \dot{\bm{\mathcal{X}}} \label{eq:jacobian_velocity}
\end{equation}
with:
- $\delta\bm{\mathcal{L}} = [ \delta l_1, \delta l_2, \delta l_3, \delta l_4, \delta l_5, \delta l_6 ]^T$: the vector of small legs' displacements
- $\delta \bm{\mathcal{X}} = [\delta x, \delta y, \delta z, \delta \theta_x, \delta \theta_y, \delta \theta_z ]^T$: the vector of small mobile platform displacements
- $\dot{\bm{\mathcal{L}}} = [ \dot{l}_1, \dot{l}_2, \dot{l}_3, \dot{l}_4, \dot{l}_5, \dot{l}_6 ]^T$: relative velocity of each strut
- $\dot{\bm{X}} = [^A\bm{v}_p, {}^A\bm{\omega}]^T$: output twist vector of the mobile platform
Thus, from a wanted small displacement $\delta \bm{\mathcal{X}}$, it is easy to compute the required displacement of the legs $\delta \bm{\mathcal{L}}$.
Similarly, from a measurement of the legs' displacement, it is easy to compute the resulting platform's motion.
For small legs motions $\delta\bm{\mathcal{L}}$ and small mobile platform motion $\delta \bm{\mathcal{X}}$, the following approximation can be computed from Eq. eqref:eq:jacobian_velocity:
\begin{equation}
\delta\bm{\mathcal{L}} \approx \bm{J} \delta\bm{\mathcal{X}}, \quad \delta\bm{\mathcal{X}} \approx \bm{J}^{-1} \delta\bm{\mathcal{L}} \label{eq:jacobian_L}
\end{equation}
This will be used to estimate the platform's mobility from the stroke of the legs, or inversely, to estimate the required stroke of the legs from the wanted platform's mobility.
Equations eqref:eq:jacobian_L can be used to *approximate the forward and inverse kinematic* problems for small displacements.
This approximation will be used to estimate the platform's mobility from the legs' stroke, or inversely, to estimate the required stroke of the legs from the wanted platform's mobility.
Note that Eq. eqref:eq:jacobian_L is an approximation and is only valid for leg's displacement less than $1\%$ of the leg's length which is the case for the nano-hexapod.
It can also be shown that:
It can also be shown that the Jacobian matrix links the *actuator forces to forces and moments acting on the moving platform*:
\begin{equation}
\bm{\mathcal{F}} = \bm{J}^T \bm{\tau}, \quad \bm{\tau} = \bm{J}^{-T} \bm{\mathcal{F}} \label{eq:jacobian_F}
\end{equation}
@ -1123,42 +1204,16 @@ with:
- $\bm{\tau} = [\tau_1, \tau_2, \cdots, \tau_6]^T$: vector of actuator forces applied in each strut
- $\bm{\mathcal{F}} = [\bm{f}, \bm{n}]^T$: external force/torque action on the mobile platform
And thus the Jacobian matrix can be used to compute the forces that should be applied on each leg from forces and torques that we want to apply on the top platform.
Transformations in Eq. eqref:eq:jacobian_L and eqref:eq:jacobian_F will be widely in the developed control architectures.
*** Stiffness and Compliance matrices
:PROPERTIES:
:UNNUMBERED: t
:END:
\begin{equation*}
\bm{\mathcal{F}} = \bm{K} \delta \bm{\mathcal{X}}
\end{equation*}
\begin{equation*}
\bm{K} = \bm{J}^T \mathcal{K} \bm{J}
\end{equation*}
\begin{equation*}
\bm{C} = \bm{K}^{-1} = (\bm{J}^T \mathcal{K} \bm{J})^{-1}
\end{equation*}
Stiffness properties is estimated from the architecture and leg's stiffness
Kinematic Study https://tdehaeze.github.io/stewart-simscape/kinematic-study.html
And thus *the Jacobian matrix can be used to compute the forces that should be applied on each leg from forces and torques that we want to apply on the nano-hexapod's top platform*.
Linear transformations in Eq. eqref:eq:jacobian_L and eqref:eq:jacobian_F will be widely in the developed control architectures in Section [[sec:robust_control_architecture]].
*** Mobility of the Stewart Platform
:PROPERTIES:
:UNNUMBERED: t
:END:
For a specified geometry and actuator stroke, the mobility of the Stewart platform can be estimated.
For a specified geometry and actuator stroke, the mobility of the Stewart platform can be estimated thanks to the approximate forward kinematic analysis.
An example of the mobility considering only pure translations is shown in Figure [[fig:mobility_translations_null_rotation]].
@ -1166,27 +1221,122 @@ An example of the mobility considering only pure translations is shown in Figure
#+caption: Obtained mobility of a Stewart platform for pure translations (the platform's orientation is fixed)
[[file:figs/mobility_translations_null_rotation.png]]
*** Flexible Joints
From a wanted mobility and a specific geometry, the required actuator stroke can be estimated.
Suppose we want the following mobility:
- x, y and z translations up to $50\,\mu m$
- x and y rotation up to $30\,\mu rad$
- no z rotation
The geometry is chosen arbitrary and corresponds to the wanted nano-hexapod size.
If only pure translations and pure rotations are considered, the required actuator stroke is $76 \mu m$, whereas if *combined* translations and rotations are considered, the required actuator stroke is $177 \mu m$.
This gives an idea of the relation between the mobility and the actuator stroke.
*** Stiffness and Compliance matrices
:PROPERTIES:
:UNNUMBERED: t
:END:
Active Damping Study https://tdehaeze.github.io/stewart-simscape/control-active-damping.html
In order to determine the stiffness and compliance matrices of the Stewart platform, let's model the actuators by a spring with a stiffness $k_i$ in parallel with a force source $\tau_i$.
- Advantages compared to conventional joints
- Simulations will help determine the required rotational stroke and will help with the design
- Typical joint stiffness is included in the model
The stiffness of the actuator $k_i$ links the applied (constant) actuator force $\delta \tau_i$ and the corresponding small deflection $\delta l_i$:
\begin{equation*}
\tau_i = k_i \delta l_i, \quad i = 1,\ \dots,\ 6
\end{equation*}
If we combine these 6 relations:
\begin{equation*}
\bm{\tau} = \mathcal{K} \delta \bm{\mathcal{L}} \quad \mathcal{K} = \text{diag}\left[ k_1,\ \dots,\ k_6 \right]
\end{equation*}
Flexible Joint stiffness => not problematic for the chosen active damping technique
Equations eqref:eq:jacobian_L and eqref:eq:jacobian_F are used to obtain:
\begin{equation}
\bm{\mathcal{F}} = \bm{K} \delta \bm{\mathcal{X}}
\end{equation}
with the stiffness matrix
\begin{equation}
\bm{K} = \bm{J}^T \mathcal{K} \bm{J} \label{eq:jacobian_K}
\end{equation}
Example of flexible joints used [[fig:preumont07_flexible_joints]], [[fig:yang19_flexible_joints]]
And the compliance matrix can be computed by taking the inverse of the Stiffness matrix:
\begin{equation*}
\bm{C} = \bm{K}^{-1} = (\bm{J}^T \mathcal{K} \bm{J})^{-1}
\end{equation*}
The compliance matrix of a manipulator shows the mapping of the moving platform wrench applied at $\bm{O}_B$ to its small deflection by
\begin{equation*}
\delta \bm{\mathcal{X}} = \bm{C} \cdot \bm{\mathcal{F}}
\end{equation*}
#+name: tab:yang19_stiffness_flexible_joints
#+caption: Stiffness of unversal and spherical flexible joints cite:yang19_dynam_model_decoup_contr_flexib
| $k_{\theta u},\ k_{\psi u}$ | $72 Nm/rad$ |
| $k_{\theta s}$ | $51 Nm/rad$ |
| $k_{\psi s}$ | $62 Nm/rad$ |
| $k_{\gamma s}$ | $64 Nm/rad$ |
Stiffness properties of the Stewart platform can then be estimated from the architecture (through the Jacobian matrix) and leg's stiffness.
*** Effect of a change of geometry
:PROPERTIES:
:UNNUMBERED: t
:END:
Equations eqref:eq:jacobian_L, eqref:eq:jacobian_F and eqref:eq:jacobian_K can be used to see how the maneuverability, the force authority and the stiffness of the Stewart platform are changing with a the geometry (position of the joints and orientation of the legs).
The effects of two changes in the manipulator's geometry are summarized in Table [[tab:effect_legs_jacobian]].
These results could have been easily deduced with some basics of mechanics, but they can be easily quantified thanks to the Kinematic and Jacobian analysis.
The nano-hexapod geometry and further be optimized in terms of stiffness and stroke using the presented tools.
#+name: tab:effect_legs_jacobian
#+caption: Effect of a change in geometry on the manipulator's stiffness, force authority and stroke
| | *legs pointing more vertically* | *legs further apart* |
|-------------------------------+---------------------------------+----------------------|
| Vertical stiffness | $\nearrow$ | $=$ |
| Horizontal stiffness | $\searrow$ | $=$ |
| Vertical rotation stiffness | $\searrow$ | $\nearrow$ |
| Horizontal rotation stiffness | $\nearrow$ | $\nearrow$ |
|-------------------------------+---------------------------------+----------------------|
| Vertical force authority | $\nearrow$ | $=$ |
| Horizontal force authority | $\searrow$ | $=$ |
| Vertical torque authority | $\searrow$ | $\nearrow$ |
| Horizontal torque authority | $\nearrow$ | $\nearrow$ |
|-------------------------------+---------------------------------+----------------------|
| Vertical stroke | $\searrow$ | $=$ |
| Horizontal stroke | $\nearrow$ | $=$ |
| Vertical rotation stroke | $\nearrow$ | $\searrow$ |
| Horizontal rotation stroke | $\searrow$ | $\searrow$ |
*** Cubic Architecture
:PROPERTIES:
:UNNUMBERED: t
:END:
A very popular choice of Stewart platform architecture, especially for vibration isolation, is the *Cubic architecture*.
The cubic architecture is quite specific in the sense that the active struts are arranged in a mutually orthogonal configuration connecting the corners of a cube (Figure [[fig:3d-cubic-stewart-aligned]]).
#+name: fig:3d-cubic-stewart-aligned
#+caption: Schematic representation of the Cubic architecture
[[file:figs/3d-cubic-stewart-aligned.png]]
This architecture provides some advantages such as *uniform stiffness* and *uniform mobility* in all directions.
It can also have very nice dynamical properties in specific conditions (center of mass of the payload located at the cube's center) that are not met for the NASS.
The cubic configuration also puts much restriction on the position and orientation of the legs as there is only one design variable: the size of the cube.
#+begin_important
For these reasons, the cubic configuration is not recommended for the nano-hexapod.
#+end_important
Separate study of the cubic architecture is performed [[https://tdehaeze.github.io/stewart-simscape/cubic-configuration.html][here]].
*** Effect of Flexible Joints
:PROPERTIES:
:UNNUMBERED: t
:END:
Each of the nano-hexapod legs has a universal joint at one end and a spherical joint at the other end.
When only small stroke is required, *flexible* joints can be used: material is bend to achieve motion, rather than relying on sliding or rolling across two surfaces.
Example of flexible joints used for Stewart platforms are shown in Figures [[fig:preumont07_flexible_joints]] and [[fig:yang19_flexible_joints]].
#+name: fig:preumont07_flexible_joints
#+caption: Flexible joints used in cite:preumont07_six_axis_singl_stage_activ
@ -1196,38 +1346,65 @@ Example of flexible joints used [[fig:preumont07_flexible_joints]], [[fig:yang19
#+caption: An alternative type of flexible joints that has been used for Stewart platforms cite:yang19_dynam_model_decoup_contr_flexib
[[file:figs/yang19_flexible_joints.png]]
The flexible joints have few advantages compared to conventional joints such as the *absence of wear, friction and backlash* which allows extremely high-precision (predictable) motion.
*** Cubic Architecture
:PROPERTIES:
:UNNUMBERED: t
:END:
The parasitic bending and torsional stiffness of these joints usually induce some *limitation on the control performance*.
Study of cubic architecture https://tdehaeze.github.io/stewart-simscape/cubic-configuration.html
Has some advantages such as uniform stiffness and uniform mobility.
It can have very nice properties in specific conditions that will not be the case for this application.
The cubic configuration also puts much restriction on the position and orientation of each leg.
This configuration is such not recommended.
This has been studied using the Simscape model (report available [[https://tdehaeze.github.io/nass-simscape/flexible_joints_study.html][here]]), and conclusions on the required characteristics of the flexible joints are summarized below.
#+name: fig:3d-cubic-stewart-aligned
#+caption: Figure caption
[[file:figs/3d-cubic-stewart-aligned.png]]
The bending and torsional stiffnesses somehow adds a parasitic stiffness in parallel with the struts.
This is not found to be problematic for the control architecture that will be developed in Section [[sec:robust_control_architecture]] (it is however, if Integral Force Feedback is to be used, explained [[https://tdehaeze.github.io/stewart-simscape/control-active-damping.html][here]]).
The finite axial stiffness of the flexible joints can however be very problematic for control.
Small values of the axial stiffness are shown to limit the achievable damping using Direct Velocity Feedback.
The axial stiffness should therefore be maximized and taken into account in the model of the nano-hexapod.
For the identified optimal actuator stiffness $k = 10^5\,[N/m]$, the flexible joint should have the following stiffness properties:
- Axial Stiffness: $K_a > 10^7\,[N/m]$
- Bending Stiffness: $K_b < 50\,[Nm/rad]$
- Torsion Stiffness: $K_t < 50\,[Nm/rad]$
These requirements are easily obtained in practice.
For instance, the flexible joint used for the ID16 nano-hexapod have the following stiffness properties:
- Axial Stiffness: $K_a = 6 \cdot 10^7\,[N/m]$
- Bending Stiffness: $K_b = 15\,[Nm/rad]$
- Torsion Stiffness: $K_t = 20\,[Nm/rad]$
#+begin_important
Even though much attention should be paid on the proper design of the flexible joints, they should not impose limitation on the performance of the system.
Simulations will help determine the required rotational stroke of the flexible joints and will help with the design.
#+end_important
*** Conclusion
:PROPERTIES:
:UNNUMBERED: t
:END:
#+begin_important
Relations between the geometry of the Stewart platform and its characteristics such as stiffness, maneuverability and force authority have been derived.
These relations can help optimize the Stewart platform's geometry, however, the choice of the geometry is quite constrained by the limited size of the hexapod, the size of the flexible joints and of the included actuators and sensors.
The effects of flexible joints stiffness on the dynamics have been studied and requirements on the flexible joints have been derived.
#+end_important
** Conclusion
#+begin_important
In Section [[sec:optimal_stiff_dist]], it has been concluded that a nano-hexapod stiffness below $10^5-10^6\,[N/m]$ helps reducing the high frequency vibrations induced by all sources of disturbances considered.
As the high frequency vibrations are the most difficult to compensate for when using feedback control, a soft hexapod will most certainly helps improving the performances.
In Section [[sec:optimal_stiff_plant]], we concluded that a nano-hexapod leg stiffness in the range $10^5 - 10^6\,[N/m]$ is a good compromise between the uncertainty induced by the micro-station dynamics and by the rotating speed.
Provided that the samples used have a first mode that is sufficiently high in frequency, the total plant dynamic uncertainty should be manageable.
Provided that the samples used have a first mode that is sufficiently high in frequency, the total plant dynamic uncertainty should be manageable by the control.
Thus, a stiffness of $10^5\,[N/m]$ will be used in Section [[sec:robust_control_architecture]] to develop the robust control architecture and to perform simulations.
Thus, a leg's stiffness of $10^5\,[N/m]$ will be used in Section [[sec:robust_control_architecture]] to develop the robust control architecture and to perform simulations.
A more detailed study of the determination of the optimal stiffness based on all the effects is available [[https://tdehaeze.github.io/nass-simscape/uncertainty_optimal_stiffness.html][here]].
Finally, in section [[sec:nano_hexapod_architecture]] some insights on the wanted nano-hexapod geometry are given.
#+end_important
* Robust Control Architecture
@ -1464,6 +1641,10 @@ An animation of the experiment is shown in Figure [[fig:closed_loop_sim_zoom]] a
#+caption: Top View of a tomography experiment with a 10mm offset imposed by the micro-hexapod
[[file:figs/tomography_dh_offset.gif]]
The force applied by the actuators are compensating the centripetal force induced by the spindle's rotation.
This centrifugal force is a *constant* force in the frame of the nano-hexapod (provided the rotation speed is constant), directed radially outwards the rotation spindle's axis, and is equal to $F = m r \omega^2 \approx 12 \cdot 0.01 \cdot (2\pi)^2 \approx 5\,[N]$
*** Simultaneous Translation Scans
:PROPERTIES:
:UNNUMBERED: t
@ -1495,20 +1676,38 @@ A more complete study of the control of the NASS is performed [[https://tdehaeze
<<sec:conclusion_and_further_notes>>
** Nano-Hexapod Specifications
Table summarizing the nano-hexapod wanted characteristics:
** General Conclusion
- Dimensions (Figure [[fig:nano_hexapod_size]])
- Stiffness:
- Resonances should be between 5Hz and 50Hz
-
- Flexible joints:
- To be optimized such that the above resonances are in the required range
-
- Required angular stroke: can be estimated with simulations
- Force
- Weight: $60\,kg \rightarrow 600\,N \rightarrow 60\,N$ on each actuator
- Dynamic: few Newtons
- Estimation of the required stroke:
- From simulation (i.e. for disturbance rejection alone), $\pm 5 \mu m$ is good
- However, the required stroke probably depends on two other factors:
- Static positioning errors of the stages
- Maximum tracking errors of the stages (mainly translation stage and tilt stage).
This is probably more difficult to obtain.
However, by limiting the acceleration of these stages, we may limit the dynamic tracking errors to acceptable levels
- Sensors to be included
#+name: fig:nano_hexapod_size
#+caption: First implementation of the nano-hexapod / deflector and coolsed sample plate support
[[file:figs/nano_hexapod_size.png]]
** Sensor Noise introduced by the Metrology
Say that is will introduce noise inside the bandwidth (100Hz)
This should not be significant.
** Further Work
** Cable Forces
** Using soft mounts for the Granite
<<sec:soft_granite>>
@ -1520,13 +1719,33 @@ This means that above the suspension mode of the granite (here around 2Hz), the
Sensible to detector motion?
** Others
Common metrology frame for the nano-focusing optics and the measurement of the sample position?
** Others Factors that may limit the performances
Cable forces?
Slip-Ring noise?
Metrology Reflector:
- it is very important that the first resonance of the metrology frame is high enough
- it should be above 200Hz
Common metrology frame for the nano-focusing optics and the measurement of the sample position?
** Other Notes
*** Modification of the Granite
Possible to lower the granite?
This can help the mechanical design and make the nano-hexapod stiffer.
The problem is that the Tilt stage rotation axis will not be position correctly anymore.
*** Sample trajectories
More precise definition of the sample trajectories?
- Simultaneous Ty and Rz scans at what speed?
** General Conclusion
* Bibliography :ignore:
bibliographystyle:unsrt
bibliography:ref.bib

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB