Rework multi-body model section
This commit is contained in:
		@@ -260,6 +260,9 @@ It should be the exact model reference that will be included in the NASS model (
 | 
			
		||||
- [ ] Make sure they are all defined in correct order
 | 
			
		||||
- [ ] Make sure all vectors and matrices are bold
 | 
			
		||||
 | 
			
		||||
** TODO [#A] Should I include the effect of rotation somewhere?
 | 
			
		||||
Similar to what was done with the 3DoF model?
 | 
			
		||||
 | 
			
		||||
** DONE [#C] Better understand principle of virtual work
 | 
			
		||||
CLOSED: [2025-02-10 Mon 15:51]
 | 
			
		||||
 | 
			
		||||
@@ -798,15 +801,15 @@ While a reasonable geometric configuration will be used to validate the NASS dur
 | 
			
		||||
<<sec:nhexa_model>>
 | 
			
		||||
** Introduction                                                      :ignore:
 | 
			
		||||
 | 
			
		||||
*Goal*:
 | 
			
		||||
- Study the dynamics of Stewart platform
 | 
			
		||||
- Instead of working with complex analytical models: a multi-body model is used.
 | 
			
		||||
  Complex because has to model the inertia of the struts.
 | 
			
		||||
  Cite papers that tries to model the stewart platform analytically
 | 
			
		||||
  Advantage: it will be easily included in the model of the NASS
 | 
			
		||||
- Model definition (Section ref:ssec:nhexa_model_def)
 | 
			
		||||
- Validation of the model by comparing with analytical equations (Section ref:ssec:nhexa_model_validation)
 | 
			
		||||
- Dynamics of the nano-hexapod used for conceptual analysis: (Section ref:ssec:nhexa_model_dynamics)
 | 
			
		||||
The dynamic modeling of Stewart platforms has traditionally relied on analytical approaches.
 | 
			
		||||
However, these analytical models become increasingly complex when the full dynamic behavior of struts and joints must be captured.
 | 
			
		||||
To overcome these limitations, a flexible multi-body approach has been developed that can be readily integrated into the broader NASS system model.
 | 
			
		||||
Through this multi-body modeling approach, each component model (including joints, actuators, and sensors) can be progressively refined.
 | 
			
		||||
 | 
			
		||||
The analysis is structured in three parts.
 | 
			
		||||
First, the multi-body model is developed, wherein detailed geometric parameters, inertial properties, and actuator characteristics are established (Section ref:ssec:nhexa_model_def).
 | 
			
		||||
The model is then validated through comparison with analytical equations in a simplified configuration (Section ref:ssec:nhexa_model_validation).
 | 
			
		||||
Finally, the validated model is employed to analyze the nano-hexapod dynamics, from which insights for the control system design are derived (Section ref:ssec:nhexa_model_dynamics).
 | 
			
		||||
 | 
			
		||||
** Matlab Init                                              :noexport:ignore:
 | 
			
		||||
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
 | 
			
		||||
@@ -837,11 +840,13 @@ While a reasonable geometric configuration will be used to validate the NASS dur
 | 
			
		||||
<<ssec:nhexa_model_def>>
 | 
			
		||||
**** Geometry
 | 
			
		||||
 | 
			
		||||
The geometry of the Stewart platform (see Figure ref:fig:nhexa_stewart_model_def) is defined by the position of frame $\{F\}$ with respect to $\{M\}$ and by the locations of the joints ${}^Fa_i$ and ${}^Mb_i$.
 | 
			
		||||
The point of interest, indicated by frame $\{A\}$ is located $150\,mm$ above the top platform (i.e. above the $\{M\}$ frame).
 | 
			
		||||
Parameters that defines the geometry of the nano-hexapod multi-body models are summarized in Table ref:tab:nhexa_stewart_model_geometry.
 | 
			
		||||
The Stewart platform's geometry is defined by two principal coordinate frames (Figure ref:fig:nhexa_stewart_model_def): a fixed base frame $\{F\}$ and a moving platform frame $\{M\}$.
 | 
			
		||||
The joints connecting the actuators to these frames are located at positions ${}^Fa_i$ and ${}^Mb_i$ respectively.
 | 
			
		||||
The point of interest, denoted by frame $\{A\}$, is situated $150\,mm$ above the moving platform frame $\{M\}$.
 | 
			
		||||
 | 
			
		||||
From this, the orientation $\hat{s}_i$ and length $l_i$ of the struts can be computed, the Jacobian matrix $\bm{J}$ can be computed, and the kinematics of the Stewart platform can be studied.
 | 
			
		||||
The geometric parameters of the nano-hexapod are summarized in Table ref:tab:nhexa_stewart_model_geometry.
 | 
			
		||||
These parameters define the positions of all connection points in their respective coordinate frames.
 | 
			
		||||
From these parameters, key kinematic properties can be derived: the strut orientations $\hat{s}_i$, strut lengths $l_i$, and the system's Jacobian matrix $\bm{J}$.
 | 
			
		||||
 | 
			
		||||
#+attr_latex: :options [b]{0.6\linewidth}
 | 
			
		||||
#+begin_minipage
 | 
			
		||||
@@ -879,30 +884,30 @@ From this, the orientation $\hat{s}_i$ and length $l_i$ of the struts can be com
 | 
			
		||||
 | 
			
		||||
**** Inertia of Plates
 | 
			
		||||
 | 
			
		||||
Both the fixed base and the top platform are modelled are solid bodies.
 | 
			
		||||
The bottom plate is a cylinder with radius of $120\,mm$ (matching the size of the micro-hexapod's top platform) and a thickness of $15\,mm$.
 | 
			
		||||
The top plate is also modelled as a cylinder with a radius of $110\,mm$ and a thickness of $15,mm$.
 | 
			
		||||
Both have a mass of $5\,kg$.
 | 
			
		||||
The fixed base and moving platform are modeled as solid cylindrical bodies.
 | 
			
		||||
The base platform is characterized by a radius of $120\,mm$ and thickness of $15\,mm$, matching the dimensions of the micro-hexapod's top platform.
 | 
			
		||||
The moving platform is similarly modeled with a radius of $110\,mm$ and thickness of $15\,mm$.
 | 
			
		||||
Both platforms are assigned a mass of $5\,kg$.
 | 
			
		||||
 | 
			
		||||
**** Joints
 | 
			
		||||
 | 
			
		||||
The top and bottom joints, different number of DoF can be considered.
 | 
			
		||||
universal joint, spherical joint, with added axial stiffness and even with added lateral stiffnesses.
 | 
			
		||||
For each DoF, stiffnesses can be added.
 | 
			
		||||
The platform's joints play a crucial role in its dynamic behavior.
 | 
			
		||||
At both the upper and lower connection points, various degrees of freedom can be modeled, including universal joints, spherical joints, and configurations with additional axial and lateral stiffness components.
 | 
			
		||||
For each degree of freedom, stiffness characteristics can be incorporated into the model.
 | 
			
		||||
 | 
			
		||||
During the conceptual design phase, bottom joints are modelled with universal joints (2-DoF) while top joints are modelled with spherical joints (3-DoF).
 | 
			
		||||
Both have no stiffness along their DoF and are mass-less.
 | 
			
		||||
In the conceptual design phase, a simplified joint configuration is employed: the bottom joints are modeled as two-degree-of-freedom universal joints, while the top joints are represented as three-degree-of-freedom spherical joints.
 | 
			
		||||
These joints are considered massless and exhibit no stiffness along their degrees of freedom.
 | 
			
		||||
 | 
			
		||||
**** Actuators
 | 
			
		||||
 | 
			
		||||
In its simplest form, the actuators are modelled with one prismatic joint having some internal stiffness $k_a$ and damping $c_a$, and a force source $f$.
 | 
			
		||||
The actuator model comprises several key elements (Figure ref:fig:nhexa_actuator_model).
 | 
			
		||||
At its core, each actuator is modeled as a prismatic joint with internal stiffness $k_a$ and damping $c_a$, driven by a force source $f$.
 | 
			
		||||
Similarly to what was found using the rotating 3-DoF model, a parallel stiffness $k_p$ is added in parallel with the force sensor to ensure stability when considering spindle rotation effects.
 | 
			
		||||
 | 
			
		||||
As was shown using the 3DoF rotating model, having a parallel stiffness $k_p$ with the force sensor permits to regain the guaranteed stability of decentralized IFF when the spindle is rotating.
 | 
			
		||||
Each actuator is equipped with two sensors: a force sensor providing measurements $f_m$ and a relative motion sensor measuring displacement $d_L$.
 | 
			
		||||
The actuator parameters used in the conceptual phase are presented in Table ref:tab:nhexa_actuator_parameters.
 | 
			
		||||
 | 
			
		||||
A force sensor with output $f_m$ is added as well as a relative motion sensor with output $d_L$.
 | 
			
		||||
The model of the nano-hexapod actuators used during the conceptual phase are shown in Figure ref:fig:nhexa_actuator_model with the parameters summarized in Table ref:tab:nhexa_actuator_parameters.
 | 
			
		||||
 | 
			
		||||
Thanks to the flexibility of the multi-body model, the model of the actuators can later be refined.
 | 
			
		||||
This modular approach to actuator modeling allows for future refinements as the design evolves, enabling the incorporation of additional dynamic effects or sensor characteristics as needed.
 | 
			
		||||
 | 
			
		||||
#+attr_latex: :options [b]{0.6\linewidth}
 | 
			
		||||
#+begin_minipage
 | 
			
		||||
@@ -930,8 +935,9 @@ Thanks to the flexibility of the multi-body model, the model of the actuators ca
 | 
			
		||||
** Validation of the multi-body model
 | 
			
		||||
<<ssec:nhexa_model_validation>>
 | 
			
		||||
 | 
			
		||||
The obtained multi-body model can schematically be represented as in Figure ref:fig:nhexa_stewart_model_input_outputs with actuator inputs $\bm{f}$, force sensor outputs $\bm{f}_m$ and relative displacement outputs $\bm{d}_L$.
 | 
			
		||||
The 3D representation of the Stewart platform using the multi-body model is shown in Figure ref:fig:nhexa_simscape_screenshot.
 | 
			
		||||
The developed multi-body model of the Stewart platform is represented schematically in Figure ref:fig:nhexa_stewart_model_input_outputs, highlighting the key inputs and outputs: actuator forces $\bm{f}$, force sensor measurements $\bm{f}_m$, and relative displacement measurements $\bm{d}_L$.
 | 
			
		||||
The frames $\{F\}$ and $\{M\}$ serve as interfaces for integration with other elements in the multi-body system.
 | 
			
		||||
A three-dimensional visualization of the model is presented in Figure ref:fig:nhexa_simscape_screenshot.
 | 
			
		||||
 | 
			
		||||
#+attr_latex: :options [b]{0.6\linewidth}
 | 
			
		||||
#+begin_minipage
 | 
			
		||||
@@ -949,31 +955,28 @@ The 3D representation of the Stewart platform using the multi-body model is show
 | 
			
		||||
[[file:figs/nhexa_simscape_screenshot.jpg]]
 | 
			
		||||
#+end_minipage
 | 
			
		||||
 | 
			
		||||
To validate the multi-body model of the Stewart platform, the simplest Stewart platform configuration is used to compare the multi-body dynamics with the analytical transfer functions obtained in Section ref:ssec:nhexa_stewart_platform_dynamics.
 | 
			
		||||
The validation of the multi-body model is performed using the simplest Stewart platform configuration, enabling direct comparison with the analytical transfer functions derived in Section ref:ssec:nhexa_stewart_platform_dynamics.
 | 
			
		||||
This configuration consists of massless universal joints at the base, massless spherical joints at the top platform, and massless struts with stiffness $k_a = 1\,\text{N}/\mu\text{m}$ and damping $c_a = 10\,\text{N}/({\text{m}/\text{s}})$.
 | 
			
		||||
The geometric parameters remain as specified in Table ref:tab:nhexa_actuator_parameters.
 | 
			
		||||
 | 
			
		||||
The bottom joints are universal joints while the top joints are spherical joints. All joints mass-less and have zero stiffness in the free DoF.
 | 
			
		||||
The struts are modelled with a stiffness equal to $k_a = 1\,N/\mu m$, damping $c_a = 10\,N/(m/s)$, and are mass-less.
 | 
			
		||||
The geometry used is shown in Table ref:tab:nhexa_actuator_parameters.
 | 
			
		||||
While the moving platform itself is considered massless, a $10\,\text{kg}$ cylindrical payload is mounted on top with a radius of $r = 110\,mm$ and a height $h = 300\,mm$.
 | 
			
		||||
 | 
			
		||||
The top platform is considered mass-less, but a payload with mass $m = 10\,kg$ is added on top of the Stewart platform.
 | 
			
		||||
The payload is cylindrical with a radius of $r = 110\,mm$ and a height $h = 300\,mm$ such that its center of mass coincide with $\{A\}$.
 | 
			
		||||
 | 
			
		||||
Stiffness, damping and mass matrices for the analytical equations are summarized in eqref:eq:nhexa_analytical_matrices.
 | 
			
		||||
The transfer functions from actuator forces to displacement of each strut can then be computed using eqref:eq:nhexa_transfer_function_struts.
 | 
			
		||||
For the analytical model, the stiffness, damping and mass matrices are defined in eqref:eq:nhexa_analytical_matrices.
 | 
			
		||||
 | 
			
		||||
\begin{subequations}\label{eq:nhexa_analytical_matrices}
 | 
			
		||||
\begin{align}
 | 
			
		||||
\bm{K} &= \text{diag}(k_a,\ k_a,\ k_a,\ k_a,\ k_a,\ k_a) \\
 | 
			
		||||
\bm{C} &= \text{diag}(c_a,\ c_a,\ c_a,\ c_a,\ c_a,\ c_a) \\
 | 
			
		||||
\bm{\mathcal{K}} &= \text{diag}(k_a,\ k_a,\ k_a,\ k_a,\ k_a,\ k_a) \\
 | 
			
		||||
\bm{\mathcal{C}} &= \text{diag}(c_a,\ c_a,\ c_a,\ c_a,\ c_a,\ c_a) \\
 | 
			
		||||
\bm{M} &= \text{diag}\left(m,\ m,\ m,\ \frac{1}{12}m(3r^2 + h^2),\ \frac{1}{12}m(3r^2 + h^2),\ \frac{1}{2}mr^2\right)
 | 
			
		||||
\end{align}
 | 
			
		||||
\end{subequations}
 | 
			
		||||
 | 
			
		||||
The same transfer functions are extracted from the multi-body model.
 | 
			
		||||
The obtained state-space model has 12 states which corresponds to the 6-DoF of the top platform.
 | 
			
		||||
The transfer functions from actuator forces to strut displacements are computed using these matrices according to equation eqref:eq:nhexa_transfer_function_struts.
 | 
			
		||||
These analytical transfer functions are then compared with those extracted from the multi-body model.
 | 
			
		||||
The multi-body model yields a state-space representation with 12 states, corresponding to the six degrees of freedom of the moving platform.
 | 
			
		||||
 | 
			
		||||
The transfer functions from the first actuator to the displacement of the 6 struts are compared in Figure ref:fig:nhexa_comp_multi_body_analytical.
 | 
			
		||||
A good match can be observed between the analytical formulas and the multi-body model therefore validating the multi-body model.
 | 
			
		||||
Figure ref:fig:nhexa_comp_multi_body_analytical presents a comparison between the analytical and multi-body transfer functions, specifically showing the response from the first actuator force to all six strut displacements.
 | 
			
		||||
The close agreement between both approaches across the frequency spectrum validates the multi-body model's accuracy in capturing the system's dynamic behavior.
 | 
			
		||||
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
%% Plant using Analytical Equations
 | 
			
		||||
@@ -1077,22 +1080,23 @@ exportFig('figs/nhexa_comp_multi_body_analytical.pdf', 'width', 'wide', 'height'
 | 
			
		||||
** Nano Hexapod Dynamics
 | 
			
		||||
<<ssec:nhexa_model_dynamics>>
 | 
			
		||||
 | 
			
		||||
Now that the multi-body model is validated, it can be used to study the dynamics of the nano-hexapod.
 | 
			
		||||
The model is initialized as described in Section ref:ssec:nhexa_model_def with a $10\,kg$ payload, and the transfer functions from $\bm{f}$ to $\bm{f}_m$ and $\bm{d}_e$ are computed from the multi-body model.
 | 
			
		||||
Following the validation of the multi-body model, a detailed analysis of the nano-hexapod dynamics has been performed.
 | 
			
		||||
The model parameters are set according to the specifications outlined in Section ref:ssec:nhexa_model_def, with a payload mass of $10\,kg$.
 | 
			
		||||
Transfer functions from actuator forces $\bm{f}$ to both strut displacements $\bm{d}_L$ and force measurements $\bm{f}_m$ are derived from the multi-body model.
 | 
			
		||||
 | 
			
		||||
The transfer functions relating actuator forces to strut displacements are presented in Figure ref:fig:nhexa_multi_body_plant_dL.
 | 
			
		||||
Due to the system's symmetrical design and identical strut configurations, all diagonal terms (transfer functions from force $f_i$ to displacement $d_{Li}$ of the same strut) exhibit identical behavior.
 | 
			
		||||
While the system possesses six degrees of freedom, only four distinct resonance frequencies are observed in the frequency response.
 | 
			
		||||
This reduction from six to four observable modes is attributed to the system's symmetry, where two pairs of resonances occur at identical frequencies.
 | 
			
		||||
 | 
			
		||||
The system's behavior can be characterized in three frequency regions.
 | 
			
		||||
At low frequencies, well below the first resonance, the plant demonstrates good decoupling between actuators, with the response dominated by the strut stiffness: $G(j\omega) \xrightarrow[\omega \to 0]{} \mathcal{K}^{-1}$.
 | 
			
		||||
In the mid-frequency range, the system exhibits coupled dynamics through its resonant modes, reflecting the complex interactions between the platform's degrees of freedom.
 | 
			
		||||
At high frequencies, above the highest resonance, the response is governed by the payload's inertia mapped to the strut coordinates: $G(j\omega) \xrightarrow[\omega \to \infty]{} J M^{-T} J^T \frac{-1}{\omega^2}$
 | 
			
		||||
 | 
			
		||||
- [X] What payload to use?
 | 
			
		||||
  10kg payload
 | 
			
		||||
- [ ] Transfer function from f to de:
 | 
			
		||||
  - [ ] All diagonal terms equal (thanks to symmetry and having the same struts)
 | 
			
		||||
  - [ ] 4 observed modes (due to symmetry, in reality 6 modes)
 | 
			
		||||
  - [ ] Decoupled at low frequency $G(j\omega) \xrightarrow[\omega \to 0]{} \mathcal{K}^{-1}$ (low frequency gain is K)
 | 
			
		||||
  - [ ] High frequency gain is $G(j\omega) \xrightarrow[\omega \to \infty]{} J M^{-T} J^T \frac{-1}{\omega^2}$, which is in general not diagonal
 | 
			
		||||
- [ ] Transfer function from f to fm:
 | 
			
		||||
  - [ ] Alternating poles and zeros
 | 
			
		||||
  - [ ] Effect of parallel stiffness on IFF plant?
 | 
			
		||||
- [ ] Validation of compliance matrix?
 | 
			
		||||
The force sensor transfer functions, shown in Figure ref:fig:nhexa_multi_body_plant_fm, display characteristics typical of collocated actuator-sensor pairs.
 | 
			
		||||
Each actuator's transfer function to its associated force sensor exhibits alternating complex conjugate poles and zeros.
 | 
			
		||||
The inclusion of parallel stiffness introduces an additional complex conjugate zero at low frequency, a feature previously observed in the three-degree-of-freedom rotating model.
 | 
			
		||||
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
%% Multi-Body model of the Nano-Hexapod
 | 
			
		||||
@@ -1230,13 +1234,13 @@ exportFig('figs/nhexa_multi_body_plant_fm.pdf', 'width', 'half', 'height', 600);
 | 
			
		||||
#+caption: Bode plot of the transfer functions computed from the nano-hexapod multi-body model
 | 
			
		||||
#+attr_latex: :options [htbp]
 | 
			
		||||
#+begin_figure
 | 
			
		||||
#+attr_latex: :caption \subcaption{\label{fig:nhexa_multi_body_plant_dL}$f_i$ to $d_{Li}$}
 | 
			
		||||
#+attr_latex: :caption \subcaption{\label{fig:nhexa_multi_body_plant_dL}$\bm{f}$ to $\bm{d}_{L}$}
 | 
			
		||||
#+attr_latex: :options {0.48\textwidth}
 | 
			
		||||
#+begin_subfigure
 | 
			
		||||
#+attr_latex: :width \linewidth
 | 
			
		||||
[[file:figs/nhexa_multi_body_plant_dL.png]]
 | 
			
		||||
#+end_subfigure
 | 
			
		||||
#+attr_latex: :caption \subcaption{\label{fig:nhexa_multi_body_plant_fm}$f_i$ to $f_{mi}$}
 | 
			
		||||
#+attr_latex: :caption \subcaption{\label{fig:nhexa_multi_body_plant_fm}$\bm{f}$ to $\bm{f}_{m}$}
 | 
			
		||||
#+attr_latex: :options {0.48\textwidth}
 | 
			
		||||
#+begin_subfigure
 | 
			
		||||
#+attr_latex: :width \linewidth
 | 
			
		||||
@@ -1249,13 +1253,13 @@ exportFig('figs/nhexa_multi_body_plant_fm.pdf', 'width', 'half', 'height', 600);
 | 
			
		||||
:unnumbered: t
 | 
			
		||||
:end:
 | 
			
		||||
 | 
			
		||||
- Validation of multi-body model in a simple case
 | 
			
		||||
- Possible to increase the model complexity when required
 | 
			
		||||
  - If considered 6dof joint stiffness, model order increases
 | 
			
		||||
  - Can have an effect on IFF performances: [[cite:&preumont07_six_axis_singl_stage_activ]]
 | 
			
		||||
  - Conclusion: during the conceptual design, we consider a perfect, but will be taken into account later
 | 
			
		||||
  - Optimization of the Flexible joint will be performed in Chapter 2.2
 | 
			
		||||
- MIMO system: how to control? => next section
 | 
			
		||||
The multi-body modeling approach presented in this section provides a comprehensive framework for analyzing the dynamics of the nano-hexapod system.
 | 
			
		||||
Through comparison with analytical solutions in a simplified configuration, the model's accuracy has been validated, demonstrating its ability to capture the essential dynamic behavior of the Stewart platform.
 | 
			
		||||
 | 
			
		||||
A key advantage of this modeling approach lies in its flexibility for future refinements.
 | 
			
		||||
While the current implementation employs idealized joints for the conceptual design phase, the framework readily accommodates the incorporation of joint stiffness and other non-ideal effects.
 | 
			
		||||
The joint stiffness, known to impact the performance of decentralized IFF control strategy [[cite:&preumont07_six_axis_singl_stage_activ]], can be studied as the design evolved and will be optimized during the detail design phase.
 | 
			
		||||
The validated multi-body model will serve as a valuable tool for predicting system behavior and evaluating control performance throughout the design process.
 | 
			
		||||
 | 
			
		||||
* Control of Stewart Platforms
 | 
			
		||||
:PROPERTIES:
 | 
			
		||||
 
 | 
			
		||||
										
											Binary file not shown.
										
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
% Created 2025-02-10 Mon 19:03
 | 
			
		||||
% Created 2025-02-11 Tue 09:54
 | 
			
		||||
% Intended LaTeX compiler: pdflatex
 | 
			
		||||
\documentclass[a4paper, 10pt, DIV=12, parskip=full, bibliography=totoc]{scrreprt}
 | 
			
		||||
 | 
			
		||||
@@ -87,6 +87,7 @@ Maybe not the topic here.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
\begin{table}[htbp]
 | 
			
		||||
\caption{\label{tab:nhexa_serial_vs_parallel}Advantages and Disadvantages of both serial and parallel robots}
 | 
			
		||||
\centering
 | 
			
		||||
\begin{tabularx}{\linewidth}{lXX}
 | 
			
		||||
\toprule
 | 
			
		||||
@@ -97,8 +98,6 @@ Disadvantages & Low Stiffness & Small Workspace\\
 | 
			
		||||
Kinematic Struture & Open & Closed-loop\\
 | 
			
		||||
\bottomrule
 | 
			
		||||
\end{tabularx}
 | 
			
		||||
\caption{\label{tab:nhexa_serial_vs_parallel}Advantages and Disadvantages of both serial and parallel robots}
 | 
			
		||||
 | 
			
		||||
\end{table}
 | 
			
		||||
 | 
			
		||||
\chapter{The Stewart platform}
 | 
			
		||||
@@ -425,26 +424,26 @@ While a reasonable geometric configuration will be used to validate the NASS dur
 | 
			
		||||
 | 
			
		||||
\chapter{Multi-Body Model}
 | 
			
		||||
\label{sec:nhexa_model}
 | 
			
		||||
\textbf{Goal}:
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item Study the dynamics of Stewart platform
 | 
			
		||||
\item Instead of working with complex analytical models: a multi-body model is used.
 | 
			
		||||
Complex because has to model the inertia of the struts.
 | 
			
		||||
Cite papers that tries to model the stewart platform analytically
 | 
			
		||||
Advantage: it will be easily included in the model of the NASS
 | 
			
		||||
\item Model definition (Section \ref{ssec:nhexa_model_def})
 | 
			
		||||
\item Validation of the model by comparing with analytical equations (Section \ref{ssec:nhexa_model_validation})
 | 
			
		||||
\item Dynamics of the nano-hexapod used for conceptual analysis: (Section \ref{ssec:nhexa_model_dynamics})
 | 
			
		||||
\end{itemize}
 | 
			
		||||
The dynamic modeling of Stewart platforms has traditionally relied on analytical approaches.
 | 
			
		||||
However, these analytical models become increasingly complex when the full dynamic behavior of struts and joints must be captured.
 | 
			
		||||
To overcome these limitations, a flexible multi-body approach has been developed that can be readily integrated into the broader NASS system model.
 | 
			
		||||
Through this multi-body modeling approach, each component model (including joints, actuators, and sensors) can be progressively refined.
 | 
			
		||||
 | 
			
		||||
The analysis is structured in three parts.
 | 
			
		||||
First, the multi-body model is developed, wherein detailed geometric parameters, inertial properties, and actuator characteristics are established (Section \ref{ssec:nhexa_model_def}).
 | 
			
		||||
The model is then validated through comparison with analytical equations in a simplified configuration (Section \ref{ssec:nhexa_model_validation}).
 | 
			
		||||
Finally, the validated model is employed to analyze the nano-hexapod dynamics, from which insights for the control system design are derived (Section \ref{ssec:nhexa_model_dynamics}).
 | 
			
		||||
\section{Model Definition}
 | 
			
		||||
\label{ssec:nhexa_model_def}
 | 
			
		||||
\paragraph{Geometry}
 | 
			
		||||
 | 
			
		||||
The geometry of the Stewart platform (see Figure \ref{fig:nhexa_stewart_model_def}) is defined by the position of frame \(\{F\}\) with respect to \(\{M\}\) and by the locations of the joints \({}^Fa_i\) and \({}^Mb_i\).
 | 
			
		||||
The point of interest, indicated by frame \(\{A\}\) is located \(150\,mm\) above the top platform (i.e. above the \(\{M\}\) frame).
 | 
			
		||||
Parameters that defines the geometry of the nano-hexapod multi-body models are summarized in Table \ref{tab:nhexa_stewart_model_geometry}.
 | 
			
		||||
The Stewart platform's geometry is defined by two principal coordinate frames (Figure \ref{fig:nhexa_stewart_model_def}): a fixed base frame \(\{F\}\) and a moving platform frame \(\{M\}\).
 | 
			
		||||
The joints connecting the actuators to these frames are located at positions \({}^Fa_i\) and \({}^Mb_i\) respectively.
 | 
			
		||||
The point of interest, denoted by frame \(\{A\}\), is situated \(150\,mm\) above the moving platform frame \(\{M\}\).
 | 
			
		||||
 | 
			
		||||
From this, the orientation \(\hat{s}_i\) and length \(l_i\) of the struts can be computed, the Jacobian matrix \(\bm{J}\) can be computed, and the kinematics of the Stewart platform can be studied.
 | 
			
		||||
The geometric parameters of the nano-hexapod are summarized in Table \ref{tab:nhexa_stewart_model_geometry}.
 | 
			
		||||
These parameters define the positions of all connection points in their respective coordinate frames.
 | 
			
		||||
From these parameters, key kinematic properties can be derived: the strut orientations \(\hat{s}_i\), strut lengths \(l_i\), and the system's Jacobian matrix \(\bm{J}\).
 | 
			
		||||
 | 
			
		||||
\begin{minipage}[b]{0.6\linewidth}
 | 
			
		||||
\begin{center}
 | 
			
		||||
@@ -482,30 +481,30 @@ From this, the orientation \(\hat{s}_i\) and length \(l_i\) of the struts can be
 | 
			
		||||
 | 
			
		||||
\paragraph{Inertia of Plates}
 | 
			
		||||
 | 
			
		||||
Both the fixed base and the top platform are modelled are solid bodies.
 | 
			
		||||
The bottom plate is a cylinder with radius of \(120\,mm\) (matching the size of the micro-hexapod's top platform) and a thickness of \(15\,mm\).
 | 
			
		||||
The top plate is also modelled as a cylinder with a radius of \(110\,mm\) and a thickness of \(15,mm\).
 | 
			
		||||
Both have a mass of \(5\,kg\).
 | 
			
		||||
The fixed base and moving platform are modeled as solid cylindrical bodies.
 | 
			
		||||
The base platform is characterized by a radius of \(120\,mm\) and thickness of \(15\,mm\), matching the dimensions of the micro-hexapod's top platform.
 | 
			
		||||
The moving platform is similarly modeled with a radius of \(110\,mm\) and thickness of \(15\,mm\).
 | 
			
		||||
Both platforms are assigned a mass of \(5\,kg\).
 | 
			
		||||
 | 
			
		||||
\paragraph{Joints}
 | 
			
		||||
 | 
			
		||||
The top and bottom joints, different number of DoF can be considered.
 | 
			
		||||
universal joint, spherical joint, with added axial stiffness and even with added lateral stiffnesses.
 | 
			
		||||
For each DoF, stiffnesses can be added.
 | 
			
		||||
The platform's joints play a crucial role in its dynamic behavior.
 | 
			
		||||
At both the upper and lower connection points, various degrees of freedom can be modeled, including universal joints, spherical joints, and configurations with additional axial and lateral stiffness components.
 | 
			
		||||
For each degree of freedom, stiffness characteristics can be incorporated into the model.
 | 
			
		||||
 | 
			
		||||
During the conceptual design phase, bottom joints are modelled with universal joints (2-DoF) while top joints are modelled with spherical joints (3-DoF).
 | 
			
		||||
Both have no stiffness along their DoF and are mass-less.
 | 
			
		||||
In the conceptual design phase, a simplified joint configuration is employed: the bottom joints are modeled as two-degree-of-freedom universal joints, while the top joints are represented as three-degree-of-freedom spherical joints.
 | 
			
		||||
These joints are considered massless and exhibit no stiffness along their degrees of freedom.
 | 
			
		||||
 | 
			
		||||
\paragraph{Actuators}
 | 
			
		||||
 | 
			
		||||
In its simplest form, the actuators are modelled with one prismatic joint having some internal stiffness \(k_a\) and damping \(c_a\), and a force source \(f\).
 | 
			
		||||
The actuator model comprises several key elements (Figure \ref{fig:nhexa_actuator_model}).
 | 
			
		||||
At its core, each actuator is modeled as a prismatic joint with internal stiffness \(k_a\) and damping \(c_a\), driven by a force source \(f\).
 | 
			
		||||
Similarly to what was found using the rotating 3-DoF model, a parallel stiffness \(k_p\) is added in parallel with the force sensor to ensure stability when considering spindle rotation effects.
 | 
			
		||||
 | 
			
		||||
As was shown using the 3DoF rotating model, having a parallel stiffness \(k_p\) with the force sensor permits to regain the guaranteed stability of decentralized IFF when the spindle is rotating.
 | 
			
		||||
Each actuator is equipped with two sensors: a force sensor providing measurements \(f_m\) and a relative motion sensor measuring displacement \(d_L\).
 | 
			
		||||
The actuator parameters used in the conceptual phase are presented in Table \ref{tab:nhexa_actuator_parameters}.
 | 
			
		||||
 | 
			
		||||
A force sensor with output \(f_m\) is added as well as a relative motion sensor with output \(d_L\).
 | 
			
		||||
The model of the nano-hexapod actuators used during the conceptual phase are shown in Figure \ref{fig:nhexa_actuator_model} with the parameters summarized in Table \ref{tab:nhexa_actuator_parameters}.
 | 
			
		||||
 | 
			
		||||
Thanks to the flexibility of the multi-body model, the model of the actuators can later be refined.
 | 
			
		||||
This modular approach to actuator modeling allows for future refinements as the design evolves, enabling the incorporation of additional dynamic effects or sensor characteristics as needed.
 | 
			
		||||
 | 
			
		||||
\begin{minipage}[b]{0.6\linewidth}
 | 
			
		||||
\begin{center}
 | 
			
		||||
@@ -533,8 +532,9 @@ Thanks to the flexibility of the multi-body model, the model of the actuators ca
 | 
			
		||||
\section{Validation of the multi-body model}
 | 
			
		||||
\label{ssec:nhexa_model_validation}
 | 
			
		||||
 | 
			
		||||
The obtained multi-body model can schematically be represented as in Figure \ref{fig:nhexa_stewart_model_input_outputs} with actuator inputs \(\bm{f}\), force sensor outputs \(\bm{f}_m\) and relative displacement outputs \(\bm{d}_L\).
 | 
			
		||||
The 3D representation of the Stewart platform using the multi-body model is shown in Figure \ref{fig:nhexa_simscape_screenshot}.
 | 
			
		||||
The developed multi-body model of the Stewart platform is represented schematically in Figure \ref{fig:nhexa_stewart_model_input_outputs}, highlighting the key inputs and outputs: actuator forces \(\bm{f}\), force sensor measurements \(\bm{f}_m\), and relative displacement measurements \(\bm{d}_L\).
 | 
			
		||||
The frames \(\{F\}\) and \(\{M\}\) serve as interfaces for integration with other elements in the multi-body system.
 | 
			
		||||
A three-dimensional visualization of the model is presented in Figure \ref{fig:nhexa_simscape_screenshot}.
 | 
			
		||||
 | 
			
		||||
\begin{minipage}[b]{0.6\linewidth}
 | 
			
		||||
\begin{center}
 | 
			
		||||
@@ -550,31 +550,28 @@ The 3D representation of the Stewart platform using the multi-body model is show
 | 
			
		||||
\end{center}
 | 
			
		||||
\end{minipage}
 | 
			
		||||
 | 
			
		||||
To validate the multi-body model of the Stewart platform, the simplest Stewart platform configuration is used to compare the multi-body dynamics with the analytical transfer functions obtained in Section \ref{ssec:nhexa_stewart_platform_dynamics}.
 | 
			
		||||
The validation of the multi-body model is performed using the simplest Stewart platform configuration, enabling direct comparison with the analytical transfer functions derived in Section \ref{ssec:nhexa_stewart_platform_dynamics}.
 | 
			
		||||
This configuration consists of massless universal joints at the base, massless spherical joints at the top platform, and massless struts with stiffness \(k_a = 1\,\text{N}/\mu\text{m}\) and damping \(c_a = 10\,\text{N}/({\text{m}/\text{s}})\).
 | 
			
		||||
The geometric parameters remain as specified in Table \ref{tab:nhexa_actuator_parameters}.
 | 
			
		||||
 | 
			
		||||
The bottom joints are universal joints while the top joints are spherical joints. All joints mass-less and have zero stiffness in the free DoF.
 | 
			
		||||
The struts are modelled with a stiffness equal to \(k_a = 1\,N/\mu m\), damping \(c_a = 10\,N/(m/s)\), and are mass-less.
 | 
			
		||||
The geometry used is shown in Table \ref{tab:nhexa_actuator_parameters}.
 | 
			
		||||
While the moving platform itself is considered massless, a \(10\,\text{kg}\) cylindrical payload is mounted on top with a radius of \(r = 110\,mm\) and a height \(h = 300\,mm\).
 | 
			
		||||
 | 
			
		||||
The top platform is considered mass-less, but a payload with mass \(m = 10\,kg\) is added on top of the Stewart platform.
 | 
			
		||||
The payload is cylindrical with a radius of \(r = 110\,mm\) and a height \(h = 300\,mm\) such that its center of mass coincide with \(\{A\}\).
 | 
			
		||||
 | 
			
		||||
Stiffness, damping and mass matrices for the analytical equations are summarized in \eqref{eq:nhexa_analytical_matrices}.
 | 
			
		||||
The transfer functions from actuator forces to displacement of each strut can then be computed using \eqref{eq:nhexa_transfer_function_struts}.
 | 
			
		||||
For the analytical model, the stiffness, damping and mass matrices are defined in \eqref{eq:nhexa_analytical_matrices}.
 | 
			
		||||
 | 
			
		||||
\begin{subequations}\label{eq:nhexa_analytical_matrices}
 | 
			
		||||
\begin{align}
 | 
			
		||||
\bm{K} &= \text{diag}(k_a,\ k_a,\ k_a,\ k_a,\ k_a,\ k_a) \\
 | 
			
		||||
\bm{C} &= \text{diag}(c_a,\ c_a,\ c_a,\ c_a,\ c_a,\ c_a) \\
 | 
			
		||||
\bm{\mathcal{K}} &= \text{diag}(k_a,\ k_a,\ k_a,\ k_a,\ k_a,\ k_a) \\
 | 
			
		||||
\bm{\mathcal{C}} &= \text{diag}(c_a,\ c_a,\ c_a,\ c_a,\ c_a,\ c_a) \\
 | 
			
		||||
\bm{M} &= \text{diag}\left(m,\ m,\ m,\ \frac{1}{12}m(3r^2 + h^2),\ \frac{1}{12}m(3r^2 + h^2),\ \frac{1}{2}mr^2\right)
 | 
			
		||||
\end{align}
 | 
			
		||||
\end{subequations}
 | 
			
		||||
 | 
			
		||||
The same transfer functions are extracted from the multi-body model.
 | 
			
		||||
The obtained state-space model has 12 states which corresponds to the 6-DoF of the top platform.
 | 
			
		||||
The transfer functions from actuator forces to strut displacements are computed using these matrices according to equation \eqref{eq:nhexa_transfer_function_struts}.
 | 
			
		||||
These analytical transfer functions are then compared with those extracted from the multi-body model.
 | 
			
		||||
The multi-body model yields a state-space representation with 12 states, corresponding to the six degrees of freedom of the moving platform.
 | 
			
		||||
 | 
			
		||||
The transfer functions from the first actuator to the displacement of the 6 struts are compared in Figure \ref{fig:nhexa_comp_multi_body_analytical}.
 | 
			
		||||
A good match can be observed between the analytical formulas and the multi-body model therefore validating the multi-body model.
 | 
			
		||||
Figure \ref{fig:nhexa_comp_multi_body_analytical} presents a comparison between the analytical and multi-body transfer functions, specifically showing the response from the first actuator force to all six strut displacements.
 | 
			
		||||
The close agreement between both approaches across the frequency spectrum validates the multi-body model's accuracy in capturing the system's dynamic behavior.
 | 
			
		||||
 | 
			
		||||
\begin{figure}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
@@ -585,57 +582,48 @@ A good match can be observed between the analytical formulas and the multi-body
 | 
			
		||||
\section{Nano Hexapod Dynamics}
 | 
			
		||||
\label{ssec:nhexa_model_dynamics}
 | 
			
		||||
 | 
			
		||||
Now that the multi-body model is validated, it can be used to study the dynamics of the nano-hexapod.
 | 
			
		||||
The model is initialized as described in Section \ref{ssec:nhexa_model_def} with a \(10\,kg\) payload, and the transfer functions from \(\bm{f}\) to \(\bm{f}_m\) and \(\bm{d}_e\) are computed from the multi-body model.
 | 
			
		||||
Following the validation of the multi-body model, a detailed analysis of the nano-hexapod dynamics has been performed.
 | 
			
		||||
The model parameters are set according to the specifications outlined in Section \ref{ssec:nhexa_model_def}, with a payload mass of \(10\,kg\).
 | 
			
		||||
Transfer functions from actuator forces \(\bm{f}\) to both strut displacements \(\bm{d}_L\) and force measurements \(\bm{f}_m\) are derived from the multi-body model.
 | 
			
		||||
 | 
			
		||||
The transfer functions relating actuator forces to strut displacements are presented in Figure \ref{fig:nhexa_multi_body_plant_dL}.
 | 
			
		||||
Due to the system's symmetrical design and identical strut configurations, all diagonal terms (transfer functions from force \(f_i\) to displacement \(d_{Li}\) of the same strut) exhibit identical behavior.
 | 
			
		||||
While the system possesses six degrees of freedom, only four distinct resonance frequencies are observed in the frequency response.
 | 
			
		||||
This reduction from six to four observable modes is attributed to the system's symmetry, where two pairs of resonances occur at identical frequencies.
 | 
			
		||||
 | 
			
		||||
The system's behavior can be characterized in three frequency regions.
 | 
			
		||||
At low frequencies, well below the first resonance, the plant demonstrates good decoupling between actuators, with the response dominated by the strut stiffness: \(G(j\omega) \xrightarrow[\omega \to 0]{} \mathcal{K}^{-1}\).
 | 
			
		||||
In the mid-frequency range, the system exhibits coupled dynamics through its resonant modes, reflecting the complex interactions between the platform's degrees of freedom.
 | 
			
		||||
At high frequencies, above the highest resonance, the response is governed by the payload's inertia mapped to the strut coordinates: \(G(j\omega) \xrightarrow[\omega \to \infty]{} J M^{-T} J^T \frac{-1}{\omega^2}\)
 | 
			
		||||
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item[{$\boxtimes$}] What payload to use?
 | 
			
		||||
10kg payload
 | 
			
		||||
\item[{$\square$}] Transfer function from f to de:
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item[{$\square$}] All diagonal terms equal (thanks to symmetry and having the same struts)
 | 
			
		||||
\item[{$\square$}] 4 observed modes (due to symmetry, in reality 6 modes)
 | 
			
		||||
\item[{$\square$}] Decoupled at low frequency \(G(j\omega) \xrightarrow[\omega \to 0]{} \mathcal{K}^{-1}\) (low frequency gain is K)
 | 
			
		||||
\item[{$\square$}] High frequency gain is \(G(j\omega) \xrightarrow[\omega \to \infty]{} J M^{-T} J^T \frac{-1}{\omega^2}\), which is in general not diagonal
 | 
			
		||||
\end{itemize}
 | 
			
		||||
\item[{$\square$}] Transfer function from f to fm:
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item[{$\square$}] Alternating poles and zeros
 | 
			
		||||
\item[{$\square$}] Effect of parallel stiffness on IFF plant?
 | 
			
		||||
\end{itemize}
 | 
			
		||||
\item[{$\square$}] Validation of compliance matrix?
 | 
			
		||||
\end{itemize}
 | 
			
		||||
The force sensor transfer functions, shown in Figure \ref{fig:nhexa_multi_body_plant_fm}, display characteristics typical of collocated actuator-sensor pairs.
 | 
			
		||||
Each actuator's transfer function to its associated force sensor exhibits alternating complex conjugate poles and zeros.
 | 
			
		||||
The inclusion of parallel stiffness introduces an additional complex conjugate zero at low frequency, a feature previously observed in the three-degree-of-freedom rotating model.
 | 
			
		||||
 | 
			
		||||
\begin{figure}[htbp]
 | 
			
		||||
\begin{subfigure}{0.48\textwidth}
 | 
			
		||||
\begin{center}
 | 
			
		||||
\includegraphics[scale=1,width=\linewidth]{figs/nhexa_multi_body_plant_dL.png}
 | 
			
		||||
\end{center}
 | 
			
		||||
\subcaption{\label{fig:nhexa_multi_body_plant_dL}$f_i$ to $d_{Li}$}
 | 
			
		||||
\subcaption{\label{fig:nhexa_multi_body_plant_dL}$\bm{f}$ to $\bm{d}_{L}$}
 | 
			
		||||
\end{subfigure}
 | 
			
		||||
\begin{subfigure}{0.48\textwidth}
 | 
			
		||||
\begin{center}
 | 
			
		||||
\includegraphics[scale=1,width=\linewidth]{figs/nhexa_multi_body_plant_fm.png}
 | 
			
		||||
\end{center}
 | 
			
		||||
\subcaption{\label{fig:nhexa_multi_body_plant_fm}$f_i$ to $f_{mi}$}
 | 
			
		||||
\subcaption{\label{fig:nhexa_multi_body_plant_fm}$\bm{f}$ to $\bm{f}_{m}$}
 | 
			
		||||
\end{subfigure}
 | 
			
		||||
\caption{\label{fig:nhexa_multi_body_plant}Bode plot of the transfer functions computed from the nano-hexapod multi-body model}
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
\section*{Conclusion}
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item Validation of multi-body model in a simple case
 | 
			
		||||
\item Possible to increase the model complexity when required
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item If considered 6dof joint stiffness, model order increases
 | 
			
		||||
\item Can have an effect on IFF performances: \cite{preumont07_six_axis_singl_stage_activ}
 | 
			
		||||
\item Conclusion: during the conceptual design, we consider a perfect, but will be taken into account later
 | 
			
		||||
\item Optimization of the Flexible joint will be performed in Chapter 2.2
 | 
			
		||||
\end{itemize}
 | 
			
		||||
\item MIMO system: how to control? => next section
 | 
			
		||||
\end{itemize}
 | 
			
		||||
The multi-body modeling approach presented in this section provides a comprehensive framework for analyzing the dynamics of the nano-hexapod system.
 | 
			
		||||
Through comparison with analytical solutions in a simplified configuration, the model's accuracy has been validated, demonstrating its ability to capture the essential dynamic behavior of the Stewart platform.
 | 
			
		||||
 | 
			
		||||
A key advantage of this modeling approach lies in its flexibility for future refinements.
 | 
			
		||||
While the current implementation employs idealized joints for the conceptual design phase, the framework readily accommodates the incorporation of joint stiffness and other non-ideal effects.
 | 
			
		||||
The joint stiffness, known to impact the performance of decentralized IFF control strategy \cite{preumont07_six_axis_singl_stage_activ}, can be studied as the design evolved and will be optimized during the detail design phase.
 | 
			
		||||
The validated multi-body model will serve as a valuable tool for predicting system behavior and evaluating control performance throughout the design process.
 | 
			
		||||
 | 
			
		||||
\chapter{Control of Stewart Platforms}
 | 
			
		||||
\label{sec:nhexa_control}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user