Add acknowledgement
This commit is contained in:
parent
df44068c94
commit
dbe8c88c5c
180
phd-thesis.org
180
phd-thesis.org
@ -1,4 +1,4 @@
|
|||||||
#+TITLE: Mechatronic approach for the design of a Nano Active Stabilization System
|
#+TITLE: Nano Active Stabilization of samples for tomography experiments: A mechatronic design approach
|
||||||
:DRAWER:
|
:DRAWER:
|
||||||
#+SUBTITLE: PhD Thesis
|
#+SUBTITLE: PhD Thesis
|
||||||
|
|
||||||
@ -162,12 +162,35 @@
|
|||||||
\newpage
|
\newpage
|
||||||
#+end_export
|
#+end_export
|
||||||
|
|
||||||
* Abstract
|
* Members of the Examination Committee
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:UNNUMBERED: notoc
|
:UNNUMBERED: notoc
|
||||||
:END:
|
:END:
|
||||||
|
|
||||||
* Résumé
|
Prof. Loïc Salles (President of the Committee)\newline
|
||||||
|
University of Liège (Liège, Belgium)\\
|
||||||
|
|
||||||
|
Prof. Christophe Collette (Supervisor)\newline
|
||||||
|
University of Liège (Liège, Belgium)\\
|
||||||
|
|
||||||
|
Prof. Olivier Bruls\newline
|
||||||
|
University of Liège (Liège, Belgium)\\
|
||||||
|
|
||||||
|
Dr. Jonathan Kelly\newline
|
||||||
|
Diamond Light Source (Oxfordshire, United Kingdom)\\
|
||||||
|
|
||||||
|
Prof. Gérard Scorletti\newline
|
||||||
|
École Centrale de Lyon, Laboratoire Ampère (Écully, France)\\
|
||||||
|
|
||||||
|
Dr. Olivier Mathon\newline
|
||||||
|
European Synchrotron Radiation Facility (Grenoble, France)
|
||||||
|
|
||||||
|
* TODO Abstract
|
||||||
|
:PROPERTIES:
|
||||||
|
:UNNUMBERED: notoc
|
||||||
|
:END:
|
||||||
|
|
||||||
|
* TODO Résumé
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:UNNUMBERED: notoc
|
:UNNUMBERED: notoc
|
||||||
:END:
|
:END:
|
||||||
@ -177,6 +200,45 @@
|
|||||||
:UNNUMBERED: notoc
|
:UNNUMBERED: notoc
|
||||||
:END:
|
:END:
|
||||||
|
|
||||||
|
First and foremost, I would like to express my deepest gratitude to my advisor, Professor Christophe Collette, for his constant support throughout this journey.
|
||||||
|
His ability to challenge my thinking and dedication to mentoring my growth as a researcher has been invaluable.
|
||||||
|
Our discussions during the regular journeys between Liege and Brussels laboratories transformed routine travel into moments of scientific inspiration.
|
||||||
|
His passion and dedication for research were truly inspiring, and I could not have wished for a better advisor.\\
|
||||||
|
|
||||||
|
I am honored that Professor Loïc Salles accepted the role of president of the jury for this thesis.
|
||||||
|
My sincere appreciation goes to my thesis committee members, Professor Olivier Bruls and Professor Jean-Claude Golinval, for following my work and providing insightful advice through the years.\\
|
||||||
|
|
||||||
|
I extend my gratitude to the jury members: Dr. Jonathan Kelly, Professor Gérard Scorletti, Dr. Olivier Mathon and Professor Olivier Bruls for their willingness to participate in the examination committee of this doctoral thesis.\\
|
||||||
|
|
||||||
|
My time at the Precision Mechatronics Laboratory during the first two years of this project was enriched by interesting discussions and collaborations with Ahmad, Mohit, Jennifer, Vicente, Guoying, and Haidar.
|
||||||
|
Thank you, my friends, for making my stay in Belgium such a wonderful memory.\\
|
||||||
|
|
||||||
|
The subsequent five years at the ESRF were made possible by several key individuals: Veijo Honkimaki (ID31's Scientist), Michael Krish (Head of the Instrumentation Division), Philippe Marion (Head of the Mechanical Engineering Group), and Muriel Magnin-Mattenet (Mechanical Engineer in charge of ID31).
|
||||||
|
I am deeply thankful for their support in making this PhD thesis possible.\\
|
||||||
|
|
||||||
|
I am grateful for the fruitful collaboration on mechanical design with Julien Bonnefoy and Damien Coulon.
|
||||||
|
Special thanks to Philipp Brumund for his invaluable Finite Element Analysis expertise and constant encouragement to complete my PhD thesis.
|
||||||
|
I'm especially thankful to Marc Lesourd for introducing me to the world of vibration measurements and modal analysis, and Noel Levet for our interesting discussions about dimensional metrology and his tremendous support with the alignment of the developed instrument.\\
|
||||||
|
|
||||||
|
The technical support from Pierrick Got and Kader Amraoui in electronics was exceptional.
|
||||||
|
I also thank Hans Peter and Ludovic for their support and for granting me access to the outstanding mechatronics laboratory at the ESRF.\\
|
||||||
|
|
||||||
|
I also have to thank the master thesis students I had the chance to supervise: Adrien Jublan, Youness Benyaklhef and Caio Belle.\\
|
||||||
|
|
||||||
|
Finally, my profound thanks go to my family and close friends.
|
||||||
|
To my father, who inspired me to pursue research, and my mother, whose unwavering support has been precious beyond words.
|
||||||
|
And to Juliette, for being incredibly supportive through the inevitable tough times that are part of the PhD journey.
|
||||||
|
|
||||||
|
* Grants :ignore:
|
||||||
|
|
||||||
|
#+begin_export latex
|
||||||
|
\newpage
|
||||||
|
\thispagestyle{empty}
|
||||||
|
\vspace*{\fill}
|
||||||
|
The research presented in this manuscript has been possible thanks to the Fonds de la recherche scientifique (FRS-FNRS) through a FRIA grant given to Thomas Dehaeze.
|
||||||
|
\vspace*{\fill}
|
||||||
|
#+end_export
|
||||||
|
|
||||||
* Table of Contents :ignore:
|
* Table of Contents :ignore:
|
||||||
|
|
||||||
#+begin_export latex
|
#+begin_export latex
|
||||||
@ -3168,7 +3230,7 @@ The "controlled" DoF of each stage (for instance the $D_y$ direction for the tra
|
|||||||
**** Motion Stages
|
**** Motion Stages
|
||||||
<<ssec:ustation_stages>>
|
<<ssec:ustation_stages>>
|
||||||
|
|
||||||
****** Translation Stage
|
***** Translation Stage
|
||||||
|
|
||||||
The translation stage is used to position and scan the sample laterally with respect to the X-ray beam.
|
The translation stage is used to position and scan the sample laterally with respect to the X-ray beam.
|
||||||
|
|
||||||
@ -3178,7 +3240,7 @@ An optical linear encoder is used to measure the stage motion and for controllin
|
|||||||
|
|
||||||
Four cylindrical bearings[fn:ustation_4] are used to guide the motion (i.e. minimize the parasitic motions) and have high stiffness.
|
Four cylindrical bearings[fn:ustation_4] are used to guide the motion (i.e. minimize the parasitic motions) and have high stiffness.
|
||||||
|
|
||||||
****** Tilt Stage
|
***** Tilt Stage
|
||||||
|
|
||||||
The tilt stage is guided by four linear motion guides[fn:ustation_1] which are placed such that the center of rotation coincide with the X-ray beam.
|
The tilt stage is guided by four linear motion guides[fn:ustation_1] which are placed such that the center of rotation coincide with the X-ray beam.
|
||||||
Each linear guide is very stiff in radial directions such that the only DoF with low stiffness is in $R_y$.
|
Each linear guide is very stiff in radial directions such that the only DoF with low stiffness is in $R_y$.
|
||||||
@ -3204,14 +3266,14 @@ To precisely control the $R_y$ angle, a stepper motor and two optical encoders a
|
|||||||
[[file:figs/ustation_ry_stage.png]]
|
[[file:figs/ustation_ry_stage.png]]
|
||||||
#+end_minipage
|
#+end_minipage
|
||||||
|
|
||||||
****** Spindle
|
***** Spindle
|
||||||
|
|
||||||
Then, a rotation stage is used for tomography experiments.
|
Then, a rotation stage is used for tomography experiments.
|
||||||
It is composed of an air bearing spindle[fn:ustation_2], whose angular position is controlled with a 3 phase synchronous motor based on the reading of 4 optical encoders.
|
It is composed of an air bearing spindle[fn:ustation_2], whose angular position is controlled with a 3 phase synchronous motor based on the reading of 4 optical encoders.
|
||||||
|
|
||||||
Additional rotary unions and slip-rings are used to be able to pass electrical signals, fluids and gazes through the rotation stage.
|
Additional rotary unions and slip-rings are used to be able to pass electrical signals, fluids and gazes through the rotation stage.
|
||||||
|
|
||||||
****** Micro-Hexapod
|
***** Micro-Hexapod
|
||||||
|
|
||||||
Finally, a Stewart platform[fn:ustation_3] is used to position the sample.
|
Finally, a Stewart platform[fn:ustation_3] is used to position the sample.
|
||||||
It includes a DC motor and an optical linear encoders in each of the six struts.
|
It includes a DC motor and an optical linear encoders in each of the six struts.
|
||||||
@ -3237,7 +3299,7 @@ It can also be used to precisely position the PoI vertically with respect to the
|
|||||||
|
|
||||||
**** Mathematical description of a rigid body motion
|
**** Mathematical description of a rigid body motion
|
||||||
<<ssec:ustation_motion_description>>
|
<<ssec:ustation_motion_description>>
|
||||||
****** Introduction :ignore:
|
***** Introduction :ignore:
|
||||||
|
|
||||||
In this section, mathematical tools[fn:ustation_6] that are used to describe the motion of positioning stages are introduced.
|
In this section, mathematical tools[fn:ustation_6] that are used to describe the motion of positioning stages are introduced.
|
||||||
|
|
||||||
@ -3245,7 +3307,7 @@ First, the tools to describe the pose of a solid body (i.e. it's position and or
|
|||||||
The motion induced by a positioning stage is described by transformation matrices.
|
The motion induced by a positioning stage is described by transformation matrices.
|
||||||
Finally, the motions of all stacked stages are combined, and the sample's motion is computed from each stage motion.
|
Finally, the motions of all stacked stages are combined, and the sample's motion is computed from each stage motion.
|
||||||
|
|
||||||
****** Spatial motion representation
|
***** Spatial motion representation
|
||||||
|
|
||||||
The /pose/ of a solid body relative to a specific frame can be described by six independent parameters.
|
The /pose/ of a solid body relative to a specific frame can be described by six independent parameters.
|
||||||
Three parameters are typically used to describe its position, and three other parameters describe its orientation.
|
Three parameters are typically used to describe its position, and three other parameters describe its orientation.
|
||||||
@ -3327,7 +3389,7 @@ Such rotation can be parameterized by three Euler angles $(\alpha,\ \beta,\ \gam
|
|||||||
\end{align}
|
\end{align}
|
||||||
\end{subequations}
|
\end{subequations}
|
||||||
|
|
||||||
****** Motion of a Rigid Body
|
***** Motion of a Rigid Body
|
||||||
|
|
||||||
Since the relative positions of a rigid body with respect to a moving frame $\{B\}$ attached to it are fixed for all time, it is sufficient to know the position of the origin of the frame $O_B$ and the orientation of the frame $\{B\}$ with respect to the fixed frame $\{A\}$, to represent the position of any point $P$ in the space.
|
Since the relative positions of a rigid body with respect to a moving frame $\{B\}$ attached to it are fixed for all time, it is sufficient to know the position of the origin of the frame $O_B$ and the orientation of the frame $\{B\}$ with respect to the fixed frame $\{A\}$, to represent the position of any point $P$ in the space.
|
||||||
|
|
||||||
@ -3678,14 +3740,14 @@ Finally, the obtained disturbance sources are compared in Section ref:ssec:ustat
|
|||||||
|
|
||||||
**** Disturbance measurements
|
**** Disturbance measurements
|
||||||
<<ssec:ustation_disturbances_meas>>
|
<<ssec:ustation_disturbances_meas>>
|
||||||
****** Introduction :ignore:
|
***** Introduction :ignore:
|
||||||
In this section, ground motion is directly measured using geophones.
|
In this section, ground motion is directly measured using geophones.
|
||||||
Vibrations induced by scanning the translation stage and the spindle are also measured using dedicated setups.
|
Vibrations induced by scanning the translation stage and the spindle are also measured using dedicated setups.
|
||||||
|
|
||||||
The tilt stage and the micro-hexapod also have positioning errors; however, they are not modeled here because these two stages are only used for pre-positioning and not for scanning.
|
The tilt stage and the micro-hexapod also have positioning errors; however, they are not modeled here because these two stages are only used for pre-positioning and not for scanning.
|
||||||
Therefore, from a control perspective, they are not important.
|
Therefore, from a control perspective, they are not important.
|
||||||
|
|
||||||
****** Ground Motion
|
***** Ground Motion
|
||||||
|
|
||||||
The ground motion was measured by using a sensitive 3-axis geophone shown in Figure ref:fig:ustation_geophone_picture placed on the ground.
|
The ground motion was measured by using a sensitive 3-axis geophone shown in Figure ref:fig:ustation_geophone_picture placed on the ground.
|
||||||
The generated voltages were recorded with a high resolution DAC, and converted to displacement using the Geophone sensitivity transfer function.
|
The generated voltages were recorded with a high resolution DAC, and converted to displacement using the Geophone sensitivity transfer function.
|
||||||
@ -3707,7 +3769,7 @@ The obtained ground motion displacement is shown in Figure ref:fig:ustation_grou
|
|||||||
[[file:figs/ustation_geophone_picture.jpg]]
|
[[file:figs/ustation_geophone_picture.jpg]]
|
||||||
#+end_minipage
|
#+end_minipage
|
||||||
|
|
||||||
****** Ty Stage
|
***** Ty Stage
|
||||||
|
|
||||||
To measure the positioning errors of the translation stage, the setup shown in Figure ref:fig:ustation_errors_ty_setup is used.
|
To measure the positioning errors of the translation stage, the setup shown in Figure ref:fig:ustation_errors_ty_setup is used.
|
||||||
A special optical element (called a "straightness interferometer"[fn:ustation_9]) is fixed on top of the micro-station, while a laser source[fn:ustation_10] and a straightness reflector are fixed on the ground.
|
A special optical element (called a "straightness interferometer"[fn:ustation_9]) is fixed on top of the micro-station, while a laser source[fn:ustation_10] and a straightness reflector are fixed on the ground.
|
||||||
@ -3742,7 +3804,7 @@ Similar result is obtained for the $x$ lateral direction.
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Spindle
|
***** Spindle
|
||||||
|
|
||||||
To measure the positioning errors induced by the Spindle, a "Spindle error analyzer"[fn:ustation_7] is used as shown in Figure ref:fig:ustation_rz_meas_lion_setup.
|
To measure the positioning errors induced by the Spindle, a "Spindle error analyzer"[fn:ustation_7] is used as shown in Figure ref:fig:ustation_rz_meas_lion_setup.
|
||||||
A specific target is fixed on top of the micro-station, which consists of two sphere with 1 inch diameter precisely aligned with the spindle rotation axis.
|
A specific target is fixed on top of the micro-station, which consists of two sphere with 1 inch diameter precisely aligned with the spindle rotation axis.
|
||||||
@ -4224,7 +4286,7 @@ This is summarized in Figure ref:fig:nhexa_stewart_notations.
|
|||||||
|
|
||||||
**** Kinematic Analysis
|
**** Kinematic Analysis
|
||||||
<<ssec:nhexa_stewart_platform_kinematics>>
|
<<ssec:nhexa_stewart_platform_kinematics>>
|
||||||
****** Loop Closure
|
***** Loop Closure
|
||||||
|
|
||||||
The foundation of the kinematic analysis lies in the geometric constraints imposed by each strut, which can be expressed using loop closure equations.
|
The foundation of the kinematic analysis lies in the geometric constraints imposed by each strut, which can be expressed using loop closure equations.
|
||||||
For each strut $i$ (illustrated in Figure ref:fig:nhexa_stewart_loop_closure), the loop closure equation eqref:eq:nhexa_loop_closure can be written.
|
For each strut $i$ (illustrated in Figure ref:fig:nhexa_stewart_loop_closure), the loop closure equation eqref:eq:nhexa_loop_closure can be written.
|
||||||
@ -4239,7 +4301,7 @@ This equation links the pose[fn:nhexa_2] variables ${}^A\bm{P}$ and ${}^A\bm{R}_
|
|||||||
#+caption: Notations to compute the kinematic loop closure
|
#+caption: Notations to compute the kinematic loop closure
|
||||||
[[file:figs/nhexa_stewart_loop_closure.png]]
|
[[file:figs/nhexa_stewart_loop_closure.png]]
|
||||||
|
|
||||||
****** Inverse Kinematics
|
***** Inverse Kinematics
|
||||||
|
|
||||||
The inverse kinematic problem involves determining the required strut lengths $\bm{\mathcal{L}} = \left[ l_1, l_2, \ldots, l_6 \right]^{\intercal}$ for a desired platform pose $\bm{\mathcal{X}}$ (i.e. position ${}^A\bm{P}$ and orientation ${}^A\bm{R}_B$).
|
The inverse kinematic problem involves determining the required strut lengths $\bm{\mathcal{L}} = \left[ l_1, l_2, \ldots, l_6 \right]^{\intercal}$ for a desired platform pose $\bm{\mathcal{X}}$ (i.e. position ${}^A\bm{P}$ and orientation ${}^A\bm{R}_B$).
|
||||||
This problem can be solved analytically using the loop closure equations eqref:eq:nhexa_loop_closure.
|
This problem can be solved analytically using the loop closure equations eqref:eq:nhexa_loop_closure.
|
||||||
@ -4252,7 +4314,7 @@ The obtained strut lengths are given by eqref:eq:nhexa_inverse_kinematics.
|
|||||||
If the position and orientation of the platform lie in the feasible workspace, the solution is unique.
|
If the position and orientation of the platform lie in the feasible workspace, the solution is unique.
|
||||||
While configurations outside this workspace yield complex numbers, this only becomes relevant for large displacements that far exceed the nano-hexapod's operating range.
|
While configurations outside this workspace yield complex numbers, this only becomes relevant for large displacements that far exceed the nano-hexapod's operating range.
|
||||||
|
|
||||||
****** Forward Kinematics
|
***** Forward Kinematics
|
||||||
|
|
||||||
The forward kinematic problem seeks to determine the platform pose $\bm{\mathcal{X}}$ given a set of strut lengths $\bm{\mathcal{L}}$.
|
The forward kinematic problem seeks to determine the platform pose $\bm{\mathcal{X}}$ given a set of strut lengths $\bm{\mathcal{L}}$.
|
||||||
Unlike inverse kinematics, this presents a significant challenge because it requires solving a system of nonlinear equations.
|
Unlike inverse kinematics, this presents a significant challenge because it requires solving a system of nonlinear equations.
|
||||||
@ -4265,12 +4327,12 @@ This approximation, which is developed in subsequent sections through the Jacobi
|
|||||||
|
|
||||||
**** The Jacobian Matrix
|
**** The Jacobian Matrix
|
||||||
<<ssec:nhexa_stewart_platform_jacobian>>
|
<<ssec:nhexa_stewart_platform_jacobian>>
|
||||||
****** Introduction :ignore:
|
***** Introduction :ignore:
|
||||||
|
|
||||||
The Jacobian matrix plays a central role in analyzing the Stewart platform's behavior, providing a linear mapping between the platform and actuator velocities.
|
The Jacobian matrix plays a central role in analyzing the Stewart platform's behavior, providing a linear mapping between the platform and actuator velocities.
|
||||||
While the previously derived kinematic relationships are essential for position analysis, the Jacobian enables velocity analysis and forms the foundation for both static and dynamic studies.
|
While the previously derived kinematic relationships are essential for position analysis, the Jacobian enables velocity analysis and forms the foundation for both static and dynamic studies.
|
||||||
|
|
||||||
****** Jacobian Computation
|
***** Jacobian Computation
|
||||||
|
|
||||||
As discussed in Section ref:ssec:nhexa_stewart_platform_kinematics, the strut lengths $\bm{\mathcal{L}}$ and the platform pose $\bm{\mathcal{X}}$ are related through a system of nonlinear algebraic equations representing the kinematic constraints imposed by the struts.
|
As discussed in Section ref:ssec:nhexa_stewart_platform_kinematics, the strut lengths $\bm{\mathcal{L}}$ and the platform pose $\bm{\mathcal{X}}$ are related through a system of nonlinear algebraic equations representing the kinematic constraints imposed by the struts.
|
||||||
|
|
||||||
@ -4312,7 +4374,7 @@ The matrix $\bm{J}$ is called the Jacobian matrix and is defined by eqref:eq:nhe
|
|||||||
Therefore, the Jacobian matrix $\bm{J}$ links the rate of change of the strut length to the velocity and angular velocity of the top platform with respect to the fixed base through a set of linear equations.
|
Therefore, the Jacobian matrix $\bm{J}$ links the rate of change of the strut length to the velocity and angular velocity of the top platform with respect to the fixed base through a set of linear equations.
|
||||||
However, $\bm{J}$ needs to be recomputed for every Stewart platform pose because it depends on the actual pose of the manipulator.
|
However, $\bm{J}$ needs to be recomputed for every Stewart platform pose because it depends on the actual pose of the manipulator.
|
||||||
|
|
||||||
****** Approximate solution to the Forward and Inverse Kinematic problems
|
***** Approximate solution to the Forward and Inverse Kinematic problems
|
||||||
|
|
||||||
For small displacements $\delta \bm{\mathcal{X}} = [\delta x, \delta y, \delta z, \delta \theta_x, \delta \theta_y, \delta \theta_z ]^{\intercal}$ around an operating point $\bm{\mathcal{X}}_0$ (for which the Jacobian was computed), the associated joint displacement $\delta\bm{\mathcal{L}} = [\delta l_1,\,\delta l_2,\,\delta l_3,\,\delta l_4,\,\delta l_5,\,\delta l_6]^{\intercal}$ can be computed using the Jacobian eqref:eq:nhexa_inverse_kinematics_approximate.
|
For small displacements $\delta \bm{\mathcal{X}} = [\delta x, \delta y, \delta z, \delta \theta_x, \delta \theta_y, \delta \theta_z ]^{\intercal}$ around an operating point $\bm{\mathcal{X}}_0$ (for which the Jacobian was computed), the associated joint displacement $\delta\bm{\mathcal{L}} = [\delta l_1,\,\delta l_2,\,\delta l_3,\,\delta l_4,\,\delta l_5,\,\delta l_6]^{\intercal}$ can be computed using the Jacobian eqref:eq:nhexa_inverse_kinematics_approximate.
|
||||||
|
|
||||||
@ -4329,7 +4391,7 @@ Similarly, for small joint displacements $\delta\bm{\mathcal{L}}$, it is possibl
|
|||||||
These two relations solve the forward and inverse kinematic problems for small displacement in a /approximate/ way.
|
These two relations solve the forward and inverse kinematic problems for small displacement in a /approximate/ way.
|
||||||
While this approximation offers limited value for inverse kinematics, which can be solved analytically, it proves particularly useful for the forward kinematic problem where exact analytical solutions are difficult to obtain.
|
While this approximation offers limited value for inverse kinematics, which can be solved analytically, it proves particularly useful for the forward kinematic problem where exact analytical solutions are difficult to obtain.
|
||||||
|
|
||||||
****** Range validity of the approximate inverse kinematics
|
***** Range validity of the approximate inverse kinematics
|
||||||
|
|
||||||
The accuracy of the Jacobian-based forward kinematics solution was estimated by a simple analysis.
|
The accuracy of the Jacobian-based forward kinematics solution was estimated by a simple analysis.
|
||||||
For a series of platform positions, the exact strut lengths are computed using the analytical inverse kinematics equation eqref:eq:nhexa_inverse_kinematics.
|
For a series of platform positions, the exact strut lengths are computed using the analytical inverse kinematics equation eqref:eq:nhexa_inverse_kinematics.
|
||||||
@ -4346,7 +4408,7 @@ It can be computed once at the rest position and used for both forward and inver
|
|||||||
#+RESULTS:
|
#+RESULTS:
|
||||||
[[file:figs/nhexa_forward_kinematics_approximate_errors.png]]
|
[[file:figs/nhexa_forward_kinematics_approximate_errors.png]]
|
||||||
|
|
||||||
****** Static Forces
|
***** Static Forces
|
||||||
|
|
||||||
The static force analysis of the Stewart platform can be performed using the principle of virtual work.
|
The static force analysis of the Stewart platform can be performed using the principle of virtual work.
|
||||||
This principle states that for a system in static equilibrium, the total virtual work of all forces acting on the system must be zero for any virtual displacement compatible with the system's constraints.
|
This principle states that for a system in static equilibrium, the total virtual work of all forces acting on the system must be zero for any virtual displacement compatible with the system's constraints.
|
||||||
@ -4369,7 +4431,7 @@ Using the Jacobian relationship that links virtual displacements eqref:eq:nhexa_
|
|||||||
Because this equation must hold for any virtual displacement $\delta \bm{\mathcal{X}}$, the force mapping relationships eqref:eq:nhexa_jacobian_forces can be derived.
|
Because this equation must hold for any virtual displacement $\delta \bm{\mathcal{X}}$, the force mapping relationships eqref:eq:nhexa_jacobian_forces can be derived.
|
||||||
|
|
||||||
\begin{equation}\label{eq:nhexa_jacobian_forces}
|
\begin{equation}\label{eq:nhexa_jacobian_forces}
|
||||||
\bm{f}^{\intercal} \bm{J} - \bm{\mathcal{F}}^{\intercal} = 0 \quad \Rightarrow \quad \boxed{\bm{\mathcal{F}} = \bm{J}^{\intercal} \bm{f}} \quad \text{and} \quad \boxed{\bm{f} = \bm{J}^{-T} \bm{\mathcal{F}}}
|
\bm{f}^{\intercal} \bm{J} - \bm{\mathcal{F}}^{\intercal} = 0 \quad \Rightarrow \quad \boxed{\bm{\mathcal{F}} = \bm{J}^{\intercal} \bm{f}} \quad \text{and} \quad \boxed{\bm{f} = \bm{J}^{-\intercal} \bm{\mathcal{F}}}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
These equations establish that the transpose of the Jacobian matrix maps actuator forces to platform forces and torques, while its inverse transpose maps platform forces and torques to required actuator forces.
|
These equations establish that the transpose of the Jacobian matrix maps actuator forces to platform forces and torques, while its inverse transpose maps platform forces and torques to required actuator forces.
|
||||||
@ -4447,7 +4509,7 @@ The transfer function matrix in the Cartesian frame becomes eqref:eq:nhexa_trans
|
|||||||
Through coordinate transformation using the Jacobian matrix, the dynamics in the actuator space is obtained eqref:eq:nhexa_transfer_function_struts.
|
Through coordinate transformation using the Jacobian matrix, the dynamics in the actuator space is obtained eqref:eq:nhexa_transfer_function_struts.
|
||||||
|
|
||||||
\begin{equation}\label{eq:nhexa_transfer_function_struts}
|
\begin{equation}\label{eq:nhexa_transfer_function_struts}
|
||||||
\frac{\bm{\mathcal{L}}}{\bm{f}}(s) = ( \bm{J}^{-T} \bm{M} \bm{J}^{-1} s^2 + \bm{\mathcal{C}} + \bm{\mathcal{K}} )^{-1}
|
\frac{\bm{\mathcal{L}}}{\bm{f}}(s) = ( \bm{J}^{-\intercal} \bm{M} \bm{J}^{-1} s^2 + \bm{\mathcal{C}} + \bm{\mathcal{K}} )^{-1}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
Although this simplified model provides useful insights, real Stewart platforms exhibit more complex behaviors.
|
Although this simplified model provides useful insights, real Stewart platforms exhibit more complex behaviors.
|
||||||
@ -4487,7 +4549,7 @@ Finally, the validated model is employed to analyze the nano-hexapod dynamics, f
|
|||||||
|
|
||||||
**** Model Definition
|
**** Model Definition
|
||||||
<<ssec:nhexa_model_def>>
|
<<ssec:nhexa_model_def>>
|
||||||
****** Geometry
|
***** 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 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 ${}^F\bm{a}_i$ and ${}^M\bm{b}_i$ respectively.
|
The joints connecting the actuators to these frames are located at positions ${}^F\bm{a}_i$ and ${}^M\bm{b}_i$ respectively.
|
||||||
@ -4531,14 +4593,14 @@ From these parameters, key kinematic properties can be derived: the strut orient
|
|||||||
#+end_scriptsize
|
#+end_scriptsize
|
||||||
#+end_minipage
|
#+end_minipage
|
||||||
|
|
||||||
****** Inertia of Plates
|
***** Inertia of Plates
|
||||||
|
|
||||||
The fixed base and moving platform were modeled as solid cylindrical bodies.
|
The fixed base and moving platform were modeled as solid cylindrical bodies.
|
||||||
The base platform was characterized by a radius of $120\,mm$ and thickness of $15\,mm$, matching the dimensions of the micro-hexapod's top platform.
|
The base platform was 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 was similarly modeled with a radius of $110\,mm$ and thickness of $15\,mm$.
|
The moving platform was similarly modeled with a radius of $110\,mm$ and thickness of $15\,mm$.
|
||||||
Both platforms were assigned a mass of $5\,kg$.
|
Both platforms were assigned a mass of $5\,kg$.
|
||||||
|
|
||||||
****** Joints
|
***** Joints
|
||||||
|
|
||||||
The platform's joints play a crucial role in its dynamic behavior.
|
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.
|
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.
|
||||||
@ -4547,7 +4609,7 @@ For each degree of freedom, stiffness characteristics can be incorporated into t
|
|||||||
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.
|
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.
|
These joints are considered massless and exhibit no stiffness along their degrees of freedom.
|
||||||
|
|
||||||
****** Actuators
|
***** Actuators
|
||||||
|
|
||||||
The actuator model comprises several key elements (Figure ref:fig:nhexa_actuator_model).
|
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$.
|
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$.
|
||||||
@ -4647,7 +4709,7 @@ This reduction from six to four observable modes is attributed to the system's s
|
|||||||
The system's behavior can be characterized in three frequency regions.
|
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: $\bm{G}(j\omega) \xrightarrow[\omega \to 0]{} \bm{\mathcal{K}}^{-1}$.
|
At low frequencies, well below the first resonance, the plant demonstrates good decoupling between actuators, with the response dominated by the strut stiffness: $\bm{G}(j\omega) \xrightarrow[\omega \to 0]{} \bm{\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.
|
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: $\bm{G}(j\omega) \xrightarrow[\omega \to \infty]{} \bm{J} \bm{M}^{-T} \bm{J}^{\intercal} \frac{-1}{\omega^2}$
|
At high frequencies, above the highest resonance, the response is governed by the payload's inertia mapped to the strut coordinates: $\bm{G}(j\omega) \xrightarrow[\omega \to \infty]{} \bm{J} \bm{M}^{-\intercal} \bm{J}^{\intercal} \frac{-1}{\omega^2}$
|
||||||
|
|
||||||
The force sensor transfer functions, shown in Figure ref:fig:nhexa_multi_body_plant_fm, display characteristics typical of collocated actuator-sensor pairs.
|
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.
|
Each actuator's transfer function to its associated force sensor exhibits alternating complex conjugate poles and zeros.
|
||||||
@ -4723,7 +4785,7 @@ In the context of the nano-hexapod, two distinct control strategies were examine
|
|||||||
When controlling a Stewart platform using external metrology that measures the pose of frame $\{B\}$ with respect to $\{A\}$, denoted as $\bm{\mathcal{X}}$, the control architecture can be implemented in either Cartesian or strut space.
|
When controlling a Stewart platform using external metrology that measures the pose of frame $\{B\}$ with respect to $\{A\}$, denoted as $\bm{\mathcal{X}}$, the control architecture can be implemented in either Cartesian or strut space.
|
||||||
This choice affects both the control design and the obtained performance.
|
This choice affects both the control design and the obtained performance.
|
||||||
|
|
||||||
****** Control in the Strut space
|
***** Control in the Strut space
|
||||||
|
|
||||||
In this approach, as illustrated in Figure ref:fig:nhexa_control_strut, the control is performed in the space of the struts.
|
In this approach, as illustrated in Figure ref:fig:nhexa_control_strut, the control is performed in the space of the struts.
|
||||||
The Jacobian matrix is used to solve the inverse kinematics in real-time by mapping position errors from Cartesian space $\bm{\epsilon}_{\mathcal{X}}$ to strut space $\bm{\epsilon}_{\mathcal{L}}$.
|
The Jacobian matrix is used to solve the inverse kinematics in real-time by mapping position errors from Cartesian space $\bm{\epsilon}_{\mathcal{X}}$ to strut space $\bm{\epsilon}_{\mathcal{L}}$.
|
||||||
@ -4764,7 +4826,7 @@ Furthermore, at low frequencies, the plant exhibits good decoupling between the
|
|||||||
\coordinate[] (inputF) at ($(P.south west)!0.5!(P.north west)$);
|
\coordinate[] (inputF) at ($(P.south west)!0.5!(P.north west)$);
|
||||||
\coordinate[] (outputX) at ($(P.south east)!0.5!(P.north east)$);
|
\coordinate[] (outputX) at ($(P.south east)!0.5!(P.north east)$);
|
||||||
|
|
||||||
\node[block, left=0.8 of inputF] (J) {$\bm{J}^{-T}$};
|
\node[block, left=0.8 of inputF] (J) {$\bm{J}^{-\intercal}$};
|
||||||
\node[block={2.0cm}{2.0cm}, left=0.8 of J] (K) {\begin{matrix}K_{D_x} & & 0 \\ & \ddots & \\ 0 & & K_{R_z}\end{matrix}};
|
\node[block={2.0cm}{2.0cm}, left=0.8 of J] (K) {\begin{matrix}K_{D_x} & & 0 \\ & \ddots & \\ 0 & & K_{R_z}\end{matrix}};
|
||||||
\node[addb={+}{}{}{}{-}, left=0.8 of K] (subr) {};
|
\node[addb={+}{}{}{}{-}, left=0.8 of K] (subr) {};
|
||||||
|
|
||||||
@ -4791,7 +4853,7 @@ Furthermore, at low frequencies, the plant exhibits good decoupling between the
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
|
|
||||||
\bigskip
|
\bigskip
|
||||||
#+attr_latex: :caption \subcaption{\label{fig:nhexa_control_cartesian}Control in the Cartesian frame. $\bm{J}^{-T}$ is used to project force and torques on each strut}
|
#+attr_latex: :caption \subcaption{\label{fig:nhexa_control_cartesian}Control in the Cartesian frame. $\bm{J}^{-\intercal}$ is used to project force and torques on each strut}
|
||||||
#+attr_latex: :options {0.98\textwidth}
|
#+attr_latex: :options {0.98\textwidth}
|
||||||
#+begin_subfigure
|
#+begin_subfigure
|
||||||
#+attr_latex: :scale 1
|
#+attr_latex: :scale 1
|
||||||
@ -4799,7 +4861,7 @@ Furthermore, at low frequencies, the plant exhibits good decoupling between the
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Control in Cartesian Space
|
***** Control in Cartesian Space
|
||||||
|
|
||||||
Alternatively, control can be implemented directly in Cartesian space, as illustrated in Figure ref:fig:nhexa_control_cartesian.
|
Alternatively, control can be implemented directly in Cartesian space, as illustrated in Figure ref:fig:nhexa_control_cartesian.
|
||||||
Here, the controller processes Cartesian errors $\bm{\epsilon}_{\mathcal{X}}$ to generate forces and torques $\bm{\mathcal{F}}$, which are then mapped to actuator forces using the transpose of the inverse Jacobian matrix eqref:eq:nhexa_jacobian_forces.
|
Here, the controller processes Cartesian errors $\bm{\epsilon}_{\mathcal{X}}$ to generate forces and torques $\bm{\mathcal{F}}$, which are then mapped to actuator forces using the transpose of the inverse Jacobian matrix eqref:eq:nhexa_jacobian_forces.
|
||||||
@ -5746,7 +5808,7 @@ The choice of $\{A\}$ and $\{B\}$ frames, independently of the physical Stewart
|
|||||||
|
|
||||||
**** Platform Mobility / Workspace
|
**** Platform Mobility / Workspace
|
||||||
<<ssec:detail_kinematics_geometry_mobility>>
|
<<ssec:detail_kinematics_geometry_mobility>>
|
||||||
****** Introduction :ignore:
|
***** Introduction :ignore:
|
||||||
|
|
||||||
The mobility of the Stewart platform (or any manipulator) is defined as the range of motion that it can perform.
|
The mobility of the Stewart platform (or any manipulator) is defined as the range of motion that it can perform.
|
||||||
It corresponds to the set of possible poses (i.e., combined translation and rotation) of frame $\{B\}$ with respect to frame $\{A\}$.
|
It corresponds to the set of possible poses (i.e., combined translation and rotation) of frame $\{B\}$ with respect to frame $\{A\}$.
|
||||||
@ -5771,7 +5833,7 @@ The analysis is significantly simplified when considering small motions, as the
|
|||||||
Therefore, the mobility of the Stewart platform (defined as the set of achievable $[\delta x\ \delta y\ \delta z\ \delta \theta_x\ \delta \theta_y\ \delta \theta_z]$) depends on two key factors: the stroke of each strut and the geometry of the Stewart platform (embodied in the Jacobian matrix).
|
Therefore, the mobility of the Stewart platform (defined as the set of achievable $[\delta x\ \delta y\ \delta z\ \delta \theta_x\ \delta \theta_y\ \delta \theta_z]$) depends on two key factors: the stroke of each strut and the geometry of the Stewart platform (embodied in the Jacobian matrix).
|
||||||
More specifically, the XYZ mobility only depends on the $\hat{\bm{s}}_i$ (orientation of struts), while the mobility in rotation also depends on $\bm{b}_i$ (position of top joints).
|
More specifically, the XYZ mobility only depends on the $\hat{\bm{s}}_i$ (orientation of struts), while the mobility in rotation also depends on $\bm{b}_i$ (position of top joints).
|
||||||
|
|
||||||
****** Mobility in translation
|
***** Mobility in translation
|
||||||
|
|
||||||
For simplicity, only translations are first considered (i.e., the Stewart platform is considered to have fixed orientation).
|
For simplicity, only translations are first considered (i.e., the Stewart platform is considered to have fixed orientation).
|
||||||
In the general case, the translational mobility can be represented by a 3D shape having 12 faces, where each actuator limits the stroke along its axis in positive and negative directions.
|
In the general case, the translational mobility can be represented by a 3D shape having 12 faces, where each actuator limits the stroke along its axis in positive and negative directions.
|
||||||
@ -5831,7 +5893,7 @@ The amplification factor increases when the struts have a high angle with the di
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Mobility in rotation
|
***** Mobility in rotation
|
||||||
|
|
||||||
As shown by equation eqref:eq:detail_kinematics_jacobian, the rotational mobility depends both on the orientation of the struts and on the location of the top joints.
|
As shown by equation eqref:eq:detail_kinematics_jacobian, the rotational mobility depends both on the orientation of the struts and on the location of the top joints.
|
||||||
Similarly to the translational case, to increase the rotational mobility in one direction, it is advantageous to have the struts more perpendicular to the rotational direction.
|
Similarly to the translational case, to increase the rotational mobility in one direction, it is advantageous to have the struts more perpendicular to the rotational direction.
|
||||||
@ -5866,7 +5928,7 @@ Having struts further apart decreases the "lever arm" and therefore reduces the
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Combined translations and rotations
|
***** Combined translations and rotations
|
||||||
|
|
||||||
It is possible to consider combined translations and rotations, although displaying such mobility becomes more complex.
|
It is possible to consider combined translations and rotations, although displaying such mobility becomes more complex.
|
||||||
For a fixed geometry and a desired mobility (combined translations and rotations), it is possible to estimate the required minimum actuator stroke.
|
For a fixed geometry and a desired mobility (combined translations and rotations), it is possible to estimate the required minimum actuator stroke.
|
||||||
@ -5874,7 +5936,7 @@ This analysis is conducted in Section ref:sec:detail_kinematics_nano_hexapod to
|
|||||||
|
|
||||||
**** Stiffness
|
**** Stiffness
|
||||||
<<ssec:detail_kinematics_geometry_stiffness>>
|
<<ssec:detail_kinematics_geometry_stiffness>>
|
||||||
****** Introduction :ignore:
|
***** Introduction :ignore:
|
||||||
|
|
||||||
The stiffness matrix defines how the top platform of the Stewart platform (i.e. frame $\{B\}$) deforms with respect to its fixed base (i.e. frame $\{A\}$) due to static forces/torques applied between frames $\{A\}$ and $\{B\}$.
|
The stiffness matrix defines how the top platform of the Stewart platform (i.e. frame $\{B\}$) deforms with respect to its fixed base (i.e. frame $\{A\}$) due to static forces/torques applied between frames $\{A\}$ and $\{B\}$.
|
||||||
It depends on the Jacobian matrix (i.e., the geometry) and the strut axial stiffness as shown in equation eqref:eq:detail_kinematics_stiffness_matrix.
|
It depends on the Jacobian matrix (i.e., the geometry) and the strut axial stiffness as shown in equation eqref:eq:detail_kinematics_stiffness_matrix.
|
||||||
@ -5899,7 +5961,7 @@ In that case, the obtained stiffness matrix linearly depends on the strut stiffn
|
|||||||
\right]
|
\right]
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
****** Translation Stiffness
|
***** Translation Stiffness
|
||||||
|
|
||||||
As shown by equation eqref:eq:detail_kinematics_stiffness_matrix_simplified, the translation stiffnesses (the $3 \times 3$ top left terms of the stiffness matrix) only depend on the orientation of the struts and not their location: $\hat{\bm{s}}_i \cdot \hat{\bm{s}}_i^{\intercal}$.
|
As shown by equation eqref:eq:detail_kinematics_stiffness_matrix_simplified, the translation stiffnesses (the $3 \times 3$ top left terms of the stiffness matrix) only depend on the orientation of the struts and not their location: $\hat{\bm{s}}_i \cdot \hat{\bm{s}}_i^{\intercal}$.
|
||||||
In the extreme case where all struts are vertical ($s_i = [0\ 0\ 1]$), a vertical stiffness of $6k$ is achieved, but with null stiffness in the horizontal directions.
|
In the extreme case where all struts are vertical ($s_i = [0\ 0\ 1]$), a vertical stiffness of $6k$ is achieved, but with null stiffness in the horizontal directions.
|
||||||
@ -5910,13 +5972,13 @@ When the struts are oriented more vertically, as shown in Figure ref:fig:detail_
|
|||||||
Additionally, $R_x$ and $R_y$ stiffness increases while $R_z$ stiffness decreases.
|
Additionally, $R_x$ and $R_y$ stiffness increases while $R_z$ stiffness decreases.
|
||||||
The opposite conclusions apply if struts are oriented more horizontally, illustrated in Figure ref:fig:detail_kinematics_stewart_mobility_hori_struts.
|
The opposite conclusions apply if struts are oriented more horizontally, illustrated in Figure ref:fig:detail_kinematics_stewart_mobility_hori_struts.
|
||||||
|
|
||||||
****** Rotational Stiffness
|
***** Rotational Stiffness
|
||||||
|
|
||||||
The rotational stiffnesses depend both on the orientation of the struts and on the location of the top joints with respect to the considered center of rotation (i.e., the location of frame $\{A\}$).
|
The rotational stiffnesses depend both on the orientation of the struts and on the location of the top joints with respect to the considered center of rotation (i.e., the location of frame $\{A\}$).
|
||||||
With the same orientation but increased distances to the frame $\{A\}$ by a factor of 2, the rotational stiffness is increased by a factor of 4.
|
With the same orientation but increased distances to the frame $\{A\}$ by a factor of 2, the rotational stiffness is increased by a factor of 4.
|
||||||
Therefore, the compact Stewart platform depicted in Figure ref:fig:detail_kinematics_stewart_mobility_close_struts has less rotational stiffness than the Stewart platform shown in Figure ref:fig:detail_kinematics_stewart_mobility_space_struts.
|
Therefore, the compact Stewart platform depicted in Figure ref:fig:detail_kinematics_stewart_mobility_close_struts has less rotational stiffness than the Stewart platform shown in Figure ref:fig:detail_kinematics_stewart_mobility_space_struts.
|
||||||
|
|
||||||
****** Diagonal Stiffness Matrix
|
***** Diagonal Stiffness Matrix
|
||||||
|
|
||||||
Having a diagonal stiffness matrix $\bm{K}$ can be beneficial for control purposes as it would make the plant in the Cartesian frame decoupled at low frequency.
|
Having a diagonal stiffness matrix $\bm{K}$ can be beneficial for control purposes as it would make the plant in the Cartesian frame decoupled at low frequency.
|
||||||
This property depends on both the geometry and the chosen $\{A\}$ frame.
|
This property depends on both the geometry and the chosen $\{A\}$ frame.
|
||||||
@ -5941,7 +6003,7 @@ In the frame of the struts, the equations of motion eqref:eq:detail_kinematics_t
|
|||||||
This is why most Stewart platforms are controlled in the frame of the struts: below the resonance frequency, the system is well decoupled and SISO control may be applied for each strut, independently of the payload being used.
|
This is why most Stewart platforms are controlled in the frame of the struts: below the resonance frequency, the system is well decoupled and SISO control may be applied for each strut, independently of the payload being used.
|
||||||
|
|
||||||
\begin{equation}\label{eq:detail_kinematics_transfer_function_struts}
|
\begin{equation}\label{eq:detail_kinematics_transfer_function_struts}
|
||||||
\frac{\bm{\mathcal{L}}}{\bm{f}}(s) = ( \bm{J}^{-T} \bm{M} \bm{J}^{-1} s^2 + \bm{\mathcal{C}} + \bm{\mathcal{K}} )^{-1}
|
\frac{\bm{\mathcal{L}}}{\bm{f}}(s) = ( \bm{J}^{-\intercal} \bm{M} \bm{J}^{-1} s^2 + \bm{\mathcal{C}} + \bm{\mathcal{K}} )^{-1}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
Coupling between sensors (force sensors, relative position sensors or inertial sensors) in different struts may also be important for decentralized control.
|
Coupling between sensors (force sensors, relative position sensors or inertial sensors) in different struts may also be important for decentralized control.
|
||||||
@ -6009,7 +6071,7 @@ The ultimate objective is to determine the suitability of the cubic architecture
|
|||||||
|
|
||||||
**** Static Properties
|
**** Static Properties
|
||||||
<<ssec:detail_kinematics_cubic_static>>
|
<<ssec:detail_kinematics_cubic_static>>
|
||||||
****** Stiffness matrix for the Cubic architecture
|
***** Stiffness matrix for the Cubic architecture
|
||||||
|
|
||||||
Consider the cubic architecture shown in Figure ref:fig:detail_kinematics_cubic_schematic_full.
|
Consider the cubic architecture shown in Figure ref:fig:detail_kinematics_cubic_schematic_full.
|
||||||
The unit vectors corresponding to the edges of the cube are described by equation eqref:eq:detail_kinematics_cubic_s.
|
The unit vectors corresponding to the edges of the cube are described by equation eqref:eq:detail_kinematics_cubic_s.
|
||||||
@ -6220,7 +6282,7 @@ The stiffness matrix is therefore diagonal when the considered $\{B\}$ frame is
|
|||||||
This means that static forces (resp torques) applied at the cube's center will induce pure translations (resp rotations around the cube's center).
|
This means that static forces (resp torques) applied at the cube's center will induce pure translations (resp rotations around the cube's center).
|
||||||
This specific location where the stiffness matrix is diagonal is referred to as the "Center of Stiffness" (analogous to the "Center of Mass" where the mass matrix is diagonal).
|
This specific location where the stiffness matrix is diagonal is referred to as the "Center of Stiffness" (analogous to the "Center of Mass" where the mass matrix is diagonal).
|
||||||
|
|
||||||
****** Effect of having frame $\{B\}$ off-centered
|
***** Effect of having frame $\{B\}$ off-centered
|
||||||
|
|
||||||
When the reference frames $\{A\}$ and $\{B\}$ are shifted from the cube's center, off-diagonal elements emerge in the stiffness matrix.
|
When the reference frames $\{A\}$ and $\{B\}$ are shifted from the cube's center, off-diagonal elements emerge in the stiffness matrix.
|
||||||
|
|
||||||
@ -6245,7 +6307,7 @@ This poses a practical limitation, as in most applications, the relevant frame (
|
|||||||
It should be noted that for the stiffness matrix to be diagonal, the cube's center doesn't need to coincide with the geometric center of the Stewart platform.
|
It should be noted that for the stiffness matrix to be diagonal, the cube's center doesn't need to coincide with the geometric center of the Stewart platform.
|
||||||
This observation leads to the interesting alternative architectures presented in Section ref:ssec:detail_kinematics_cubic_design.
|
This observation leads to the interesting alternative architectures presented in Section ref:ssec:detail_kinematics_cubic_design.
|
||||||
|
|
||||||
****** Uniform Mobility
|
***** Uniform Mobility
|
||||||
|
|
||||||
The translational mobility of the Stewart platform with constant orientation was analyzed.
|
The translational mobility of the Stewart platform with constant orientation was analyzed.
|
||||||
Considering limited actuator stroke (elongation of each strut), the maximum achievable positions in XYZ space were estimated.
|
Considering limited actuator stroke (elongation of each strut), the maximum achievable positions in XYZ space were estimated.
|
||||||
@ -6278,14 +6340,14 @@ Furthermore, an inverse relationship exists between the cube's dimension and rot
|
|||||||
|
|
||||||
**** Dynamical Decoupling
|
**** Dynamical Decoupling
|
||||||
<<ssec:detail_kinematics_cubic_dynamic>>
|
<<ssec:detail_kinematics_cubic_dynamic>>
|
||||||
****** Introduction :ignore:
|
***** Introduction :ignore:
|
||||||
|
|
||||||
This section examines the dynamics of the cubic architecture in the Cartesian frame which corresponds to the transfer function from forces and torques $\bm{\mathcal{F}}$ to translations and rotations $\bm{\mathcal{X}}$ of the top platform.
|
This section examines the dynamics of the cubic architecture in the Cartesian frame which corresponds to the transfer function from forces and torques $\bm{\mathcal{F}}$ to translations and rotations $\bm{\mathcal{X}}$ of the top platform.
|
||||||
When relative motion sensors are integrated in each strut (measuring $\bm{\mathcal{L}}$), the pose $\bm{\mathcal{X}}$ is computed using the Jacobian matrix as shown in Figure ref:fig:detail_kinematics_centralized_control.
|
When relative motion sensors are integrated in each strut (measuring $\bm{\mathcal{L}}$), the pose $\bm{\mathcal{X}}$ is computed using the Jacobian matrix as shown in Figure ref:fig:detail_kinematics_centralized_control.
|
||||||
|
|
||||||
#+begin_src latex :file detail_kinematics_centralized_control.pdf
|
#+begin_src latex :file detail_kinematics_centralized_control.pdf
|
||||||
\begin{tikzpicture}
|
\begin{tikzpicture}
|
||||||
\node[block] (Jt) at (0, 0) {$\bm{J}^{-T}$};
|
\node[block] (Jt) at (0, 0) {$\bm{J}^{-\intercal}$};
|
||||||
\node[block, right= of Jt] (G) {$\bm{G}$};
|
\node[block, right= of Jt] (G) {$\bm{G}$};
|
||||||
\node[block, right= of G] (J) {$\bm{J}^{-1}$};
|
\node[block, right= of G] (J) {$\bm{J}^{-1}$};
|
||||||
\node[block, left= of Jt] (Kx) {$\bm{K}_{\mathcal{X}}$};
|
\node[block, left= of Jt] (Kx) {$\bm{K}_{\mathcal{X}}$};
|
||||||
@ -6308,7 +6370,7 @@ When relative motion sensors are integrated in each strut (measuring $\bm{\mathc
|
|||||||
#+RESULTS:
|
#+RESULTS:
|
||||||
[[file:figs/detail_kinematics_centralized_control.png]]
|
[[file:figs/detail_kinematics_centralized_control.png]]
|
||||||
|
|
||||||
****** Low frequency and High frequency coupling
|
***** Low frequency and High frequency coupling
|
||||||
|
|
||||||
As derived during the conceptual design phase, the dynamics from $\bm{\mathcal{F}}$ to $\bm{\mathcal{X}}$ is described by Equation eqref:eq:detail_kinematics_transfer_function_cart.
|
As derived during the conceptual design phase, the dynamics from $\bm{\mathcal{F}}$ to $\bm{\mathcal{X}}$ is described by Equation eqref:eq:detail_kinematics_transfer_function_cart.
|
||||||
At low frequency, the behavior of the platform depends on the stiffness matrix eqref:eq:detail_kinematics_transfer_function_cart_low_freq.
|
At low frequency, the behavior of the platform depends on the stiffness matrix eqref:eq:detail_kinematics_transfer_function_cart_low_freq.
|
||||||
@ -6355,7 +6417,7 @@ Conversely, when positioned at the center of stiffness, coupling occurred at hig
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Payload's CoM at the cube's center
|
***** Payload's CoM at the cube's center
|
||||||
|
|
||||||
An effective strategy for improving dynamical performances involves aligning the cube's center (center of stiffness) with the center of mass of the moving components [[cite:&li01_simul_fault_vibrat_isolat_point]].
|
An effective strategy for improving dynamical performances involves aligning the cube's center (center of stiffness) with the center of mass of the moving components [[cite:&li01_simul_fault_vibrat_isolat_point]].
|
||||||
This can be achieved by positioning the payload below the top platform, such that the center of mass of the moving body coincides with the cube's center (Figure ref:fig:detail_kinematics_cubic_centered_payload).
|
This can be achieved by positioning the payload below the top platform, such that the center of mass of the moving body coincides with the cube's center (Figure ref:fig:detail_kinematics_cubic_centered_payload).
|
||||||
@ -6382,7 +6444,7 @@ If a design similar to Figure ref:fig:detail_kinematics_cubic_centered_payload w
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Conclusion
|
***** Conclusion
|
||||||
|
|
||||||
The analysis of dynamical properties of the cubic architecture yields several important conclusions.
|
The analysis of dynamical properties of the cubic architecture yields several important conclusions.
|
||||||
Static decoupling, characterized by a diagonal stiffness matrix, is achieved when reference frames $\{A\}$ and $\{B\}$ are positioned at the cube's center.
|
Static decoupling, characterized by a diagonal stiffness matrix, is achieved when reference frames $\{A\}$ and $\{B\}$ are positioned at the cube's center.
|
||||||
@ -6392,7 +6454,7 @@ While this configuration offers powerful control advantages, it requires positio
|
|||||||
|
|
||||||
**** Decentralized Control
|
**** Decentralized Control
|
||||||
<<ssec:detail_kinematics_decentralized_control>>
|
<<ssec:detail_kinematics_decentralized_control>>
|
||||||
****** Introduction :ignore:
|
***** Introduction :ignore:
|
||||||
|
|
||||||
The orthogonal arrangement of struts in the cubic architecture suggests a potential minimization of inter-strut coupling, which could theoretically create favorable conditions for decentralized control.
|
The orthogonal arrangement of struts in the cubic architecture suggests a potential minimization of inter-strut coupling, which could theoretically create favorable conditions for decentralized control.
|
||||||
Two sensor types integrated in the struts are considered: displacement sensors and force sensors.
|
Two sensor types integrated in the struts are considered: displacement sensors and force sensors.
|
||||||
@ -6429,7 +6491,7 @@ The second uses a non-cubic Stewart platform shown in Figure ref:fig:detail_kine
|
|||||||
#+attr_latex: :width 0.6\linewidth
|
#+attr_latex: :width 0.6\linewidth
|
||||||
[[file:figs/detail_kinematics_non_cubic_payload.png]]
|
[[file:figs/detail_kinematics_non_cubic_payload.png]]
|
||||||
|
|
||||||
****** Relative Displacement Sensors
|
***** Relative Displacement Sensors
|
||||||
|
|
||||||
The transfer functions from actuator force in each strut to the relative motion of the struts are presented in Figure ref:fig:detail_kinematics_decentralized_dL.
|
The transfer functions from actuator force in each strut to the relative motion of the struts are presented in Figure ref:fig:detail_kinematics_decentralized_dL.
|
||||||
As anticipated from the equations of motion from $\bm{f}$ to $\bm{\mathcal{L}}$ eqref:eq:detail_kinematics_transfer_function_struts, the $6 \times 6$ plant is decoupled at low frequency.
|
As anticipated from the equations of motion from $\bm{f}$ to $\bm{\mathcal{L}}$ eqref:eq:detail_kinematics_transfer_function_struts, the $6 \times 6$ plant is decoupled at low frequency.
|
||||||
@ -6456,7 +6518,7 @@ The resonance frequencies differ between the two cases because the more vertical
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Force Sensors
|
***** Force Sensors
|
||||||
|
|
||||||
Similarly, the transfer functions from actuator force to force sensors in each strut were analyzed for both cubic and non-cubic Stewart platforms.
|
Similarly, the transfer functions from actuator force to force sensors in each strut were analyzed for both cubic and non-cubic Stewart platforms.
|
||||||
The results are presented in Figure ref:fig:detail_kinematics_decentralized_fn.
|
The results are presented in Figure ref:fig:detail_kinematics_decentralized_fn.
|
||||||
@ -6480,14 +6542,14 @@ The system demonstrates good decoupling at high frequency in both cases, with no
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Conclusion
|
***** Conclusion
|
||||||
|
|
||||||
The presented results do not demonstrate the pronounced decoupling advantages often associated with cubic architectures in the literature.
|
The presented results do not demonstrate the pronounced decoupling advantages often associated with cubic architectures in the literature.
|
||||||
Both the cubic and non-cubic configurations exhibited similar coupling characteristics, suggesting that the benefits of orthogonal strut arrangement for decentralized control is less obvious than often reported in the literature.
|
Both the cubic and non-cubic configurations exhibited similar coupling characteristics, suggesting that the benefits of orthogonal strut arrangement for decentralized control is less obvious than often reported in the literature.
|
||||||
|
|
||||||
**** Cubic architecture with Cube's center above the top platform
|
**** Cubic architecture with Cube's center above the top platform
|
||||||
<<ssec:detail_kinematics_cubic_design>>
|
<<ssec:detail_kinematics_cubic_design>>
|
||||||
****** Introduction :ignore:
|
***** Introduction :ignore:
|
||||||
|
|
||||||
As demonstrated in Section ref:ssec:detail_kinematics_cubic_dynamic, the cubic architecture can exhibit advantageous dynamical properties when the center of mass of the moving body coincides with the cube's center, resulting in diagonal mass and stiffness matrices.
|
As demonstrated in Section ref:ssec:detail_kinematics_cubic_dynamic, the cubic architecture can exhibit advantageous dynamical properties when the center of mass of the moving body coincides with the cube's center, resulting in diagonal mass and stiffness matrices.
|
||||||
As shown in Section ref:ssec:detail_kinematics_cubic_static, the stiffness matrix is diagonal when the considered $\{B\}$ frame is located at the cube's center.
|
As shown in Section ref:ssec:detail_kinematics_cubic_static, the stiffness matrix is diagonal when the considered $\{B\}$ frame is located at the cube's center.
|
||||||
@ -6500,7 +6562,7 @@ Three key parameters define the geometry of the cubic Stewart platform: $H$, the
|
|||||||
Depending on the cube's size $H_c$ in relation to $H$ and $H_{CoM}$, different designs emerge.
|
Depending on the cube's size $H_c$ in relation to $H$ and $H_{CoM}$, different designs emerge.
|
||||||
In the following examples, $H = 100\,mm$ and $H_{CoM} = 20\,mm$.
|
In the following examples, $H = 100\,mm$ and $H_{CoM} = 20\,mm$.
|
||||||
|
|
||||||
****** Small cube
|
***** Small cube
|
||||||
|
|
||||||
When the cube size $H_c$ is smaller than twice the height of the CoM $H_{CoM}$ eqref:eq:detail_kinematics_cube_small, the resulting design is shown in Figure ref:fig:detail_kinematics_cubic_above_small.
|
When the cube size $H_c$ is smaller than twice the height of the CoM $H_{CoM}$ eqref:eq:detail_kinematics_cube_small, the resulting design is shown in Figure ref:fig:detail_kinematics_cubic_above_small.
|
||||||
|
|
||||||
@ -6538,7 +6600,7 @@ This approach yields a compact architecture, but the small cube size may result
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Medium sized cube
|
***** Medium sized cube
|
||||||
|
|
||||||
Increasing the cube's size such that eqref:eq:detail_kinematics_cube_medium is verified produces an architecture with intersecting struts (Figure ref:fig:detail_kinematics_cubic_above_medium).
|
Increasing the cube's size such that eqref:eq:detail_kinematics_cube_medium is verified produces an architecture with intersecting struts (Figure ref:fig:detail_kinematics_cubic_above_medium).
|
||||||
|
|
||||||
@ -6572,7 +6634,7 @@ This configuration resembles the design proposed in [[cite:&yang19_dynam_model_d
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Large cube
|
***** Large cube
|
||||||
|
|
||||||
When the cube's height exceeds twice the sum of the platform height and CoM height eqref:eq:detail_kinematics_cube_large, the architecture shown in Figure ref:fig:detail_kinematics_cubic_above_large is obtained.
|
When the cube's height exceeds twice the sum of the platform height and CoM height eqref:eq:detail_kinematics_cube_large, the architecture shown in Figure ref:fig:detail_kinematics_cubic_above_large is obtained.
|
||||||
|
|
||||||
@ -6604,7 +6666,7 @@ When the cube's height exceeds twice the sum of the platform height and CoM heig
|
|||||||
#+end_subfigure
|
#+end_subfigure
|
||||||
#+end_figure
|
#+end_figure
|
||||||
|
|
||||||
****** Platform size
|
***** Platform size
|
||||||
|
|
||||||
For the proposed configuration, the top joints $\bm{b}_i$ (resp. the bottom joints $\bm{a}_i$) and are positioned on a circle with radius $R_{b_i}$ (resp. $R_{a_i}$) described by Equation eqref:eq:detail_kinematics_cube_joints.
|
For the proposed configuration, the top joints $\bm{b}_i$ (resp. the bottom joints $\bm{a}_i$) and are positioned on a circle with radius $R_{b_i}$ (resp. $R_{a_i}$) described by Equation eqref:eq:detail_kinematics_cube_joints.
|
||||||
|
|
||||||
|
BIN
phd-thesis.pdf
BIN
phd-thesis.pdf
Binary file not shown.
124
phd-thesis.tex
124
phd-thesis.tex
@ -1,4 +1,4 @@
|
|||||||
% Created 2025-04-07 Mon 16:42
|
% Created 2025-04-07 Mon 17:11
|
||||||
% Intended LaTeX compiler: pdflatex
|
% Intended LaTeX compiler: pdflatex
|
||||||
\documentclass[a4paper, 10pt, DIV=12, parskip=full, bibliography=totoc]{scrreprt}
|
\documentclass[a4paper, 10pt, DIV=12, parskip=full, bibliography=totoc]{scrreprt}
|
||||||
|
|
||||||
@ -2814,8 +2814,7 @@ s can be tuned separately for each DoF.
|
|||||||
The ``controlled'' DoF of each stage (for instance the \(D_y\) direction for the translation stage) is modeled as infinitely rigid (i.e. its motion is imposed by a ``setpoint'') while the other DoFs have limited stiffness to model the different micro-station modes.
|
The ``controlled'' DoF of each stage (for instance the \(D_y\) direction for the translation stage) is modeled as infinitely rigid (i.e. its motion is imposed by a ``setpoint'') while the other DoFs have limited stiffness to model the different micro-station modes.
|
||||||
\subsubsection{Motion Stages}
|
\subsubsection{Motion Stages}
|
||||||
\label{ssec:ustation_stages}
|
\label{ssec:ustation_stages}
|
||||||
\begin{enumerate}
|
\paragraph{Translation Stage}
|
||||||
\item Translation Stage
|
|
||||||
|
|
||||||
The translation stage is used to position and scan the sample laterally with respect to the X-ray beam.
|
The translation stage is used to position and scan the sample laterally with respect to the X-ray beam.
|
||||||
|
|
||||||
@ -2824,7 +2823,7 @@ It was later replaced with a stepper motor and lead-screw, as the feedback contr
|
|||||||
An optical linear encoder is used to measure the stage motion and for controlling the position.
|
An optical linear encoder is used to measure the stage motion and for controlling the position.
|
||||||
|
|
||||||
Four cylindrical bearings\footnote{Ball cage (N501) and guide bush (N550) from Mahr are used.} are used to guide the motion (i.e. minimize the parasitic motions) and have high stiffness.
|
Four cylindrical bearings\footnote{Ball cage (N501) and guide bush (N550) from Mahr are used.} are used to guide the motion (i.e. minimize the parasitic motions) and have high stiffness.
|
||||||
\item Tilt Stage
|
\paragraph{Tilt Stage}
|
||||||
|
|
||||||
The tilt stage is guided by four linear motion guides\footnote{HCR 35 A C1, from THK.} which are placed such that the center of rotation coincide with the X-ray beam.
|
The tilt stage is guided by four linear motion guides\footnote{HCR 35 A C1, from THK.} which are placed such that the center of rotation coincide with the X-ray beam.
|
||||||
Each linear guide is very stiff in radial directions such that the only DoF with low stiffness is in \(R_y\).
|
Each linear guide is very stiff in radial directions such that the only DoF with low stiffness is in \(R_y\).
|
||||||
@ -2847,13 +2846,13 @@ To precisely control the \(R_y\) angle, a stepper motor and two optical encoders
|
|||||||
\captionof{figure}{\label{fig:ustation_ry_stage}Tilt Stage}
|
\captionof{figure}{\label{fig:ustation_ry_stage}Tilt Stage}
|
||||||
\end{center}
|
\end{center}
|
||||||
\end{minipage}
|
\end{minipage}
|
||||||
\item Spindle
|
\paragraph{Spindle}
|
||||||
|
|
||||||
Then, a rotation stage is used for tomography experiments.
|
Then, a rotation stage is used for tomography experiments.
|
||||||
It is composed of an air bearing spindle\footnote{Made by LAB Motion Systems.}, whose angular position is controlled with a 3 phase synchronous motor based on the reading of 4 optical encoders.
|
It is composed of an air bearing spindle\footnote{Made by LAB Motion Systems.}, whose angular position is controlled with a 3 phase synchronous motor based on the reading of 4 optical encoders.
|
||||||
|
|
||||||
Additional rotary unions and slip-rings are used to be able to pass electrical signals, fluids and gazes through the rotation stage.
|
Additional rotary unions and slip-rings are used to be able to pass electrical signals, fluids and gazes through the rotation stage.
|
||||||
\item Micro-Hexapod
|
\paragraph{Micro-Hexapod}
|
||||||
|
|
||||||
Finally, a Stewart platform\footnote{Modified Zonda Hexapod by Symetrie.} is used to position the sample.
|
Finally, a Stewart platform\footnote{Modified Zonda Hexapod by Symetrie.} is used to position the sample.
|
||||||
It includes a DC motor and an optical linear encoders in each of the six struts.
|
It includes a DC motor and an optical linear encoders in each of the six struts.
|
||||||
@ -2874,7 +2873,6 @@ It can also be used to precisely position the PoI vertically with respect to the
|
|||||||
\captionof{figure}{\label{fig:ustation_hexapod_stage}Micro Hexapod}
|
\captionof{figure}{\label{fig:ustation_hexapod_stage}Micro Hexapod}
|
||||||
\end{center}
|
\end{center}
|
||||||
\end{minipage}
|
\end{minipage}
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Mathematical description of a rigid body motion}
|
\subsubsection{Mathematical description of a rigid body motion}
|
||||||
\label{ssec:ustation_motion_description}
|
\label{ssec:ustation_motion_description}
|
||||||
In this section, mathematical tools\footnote{The tools presented here are largely taken from \cite{taghirad13_paral}.} that are used to describe the motion of positioning stages are introduced.
|
In this section, mathematical tools\footnote{The tools presented here are largely taken from \cite{taghirad13_paral}.} that are used to describe the motion of positioning stages are introduced.
|
||||||
@ -2882,8 +2880,7 @@ In this section, mathematical tools\footnote{The tools presented here are largel
|
|||||||
First, the tools to describe the pose of a solid body (i.e. it's position and orientation) are introduced.
|
First, the tools to describe the pose of a solid body (i.e. it's position and orientation) are introduced.
|
||||||
The motion induced by a positioning stage is described by transformation matrices.
|
The motion induced by a positioning stage is described by transformation matrices.
|
||||||
Finally, the motions of all stacked stages are combined, and the sample's motion is computed from each stage motion.
|
Finally, the motions of all stacked stages are combined, and the sample's motion is computed from each stage motion.
|
||||||
\begin{enumerate}
|
\paragraph{Spatial motion representation}
|
||||||
\item Spatial motion representation
|
|
||||||
|
|
||||||
The \emph{pose} of a solid body relative to a specific frame can be described by six independent parameters.
|
The \emph{pose} of a solid body relative to a specific frame can be described by six independent parameters.
|
||||||
Three parameters are typically used to describe its position, and three other parameters describe its orientation.
|
Three parameters are typically used to describe its position, and three other parameters describe its orientation.
|
||||||
@ -2962,7 +2959,7 @@ Such rotation can be parameterized by three Euler angles \((\alpha,\ \beta,\ \ga
|
|||||||
\gamma &= \text{atan2}(-R_{12}/\cos(\beta),\ R_{11}/\cos(\beta))
|
\gamma &= \text{atan2}(-R_{12}/\cos(\beta),\ R_{11}/\cos(\beta))
|
||||||
\end{align}
|
\end{align}
|
||||||
\end{subequations}
|
\end{subequations}
|
||||||
\item Motion of a Rigid Body
|
\paragraph{Motion of a Rigid Body}
|
||||||
|
|
||||||
Since the relative positions of a rigid body with respect to a moving frame \(\{B\}\) attached to it are fixed for all time, it is sufficient to know the position of the origin of the frame \(O_B\) and the orientation of the frame \(\{B\}\) with respect to the fixed frame \(\{A\}\), to represent the position of any point \(P\) in the space.
|
Since the relative positions of a rigid body with respect to a moving frame \(\{B\}\) attached to it are fixed for all time, it is sufficient to know the position of the origin of the frame \(O_B\) and the orientation of the frame \(\{B\}\) with respect to the fixed frame \(\{A\}\), to represent the position of any point \(P\) in the space.
|
||||||
|
|
||||||
@ -3041,7 +3038,6 @@ Another key advantage of homogeneous transformation is the easy inverse transfor
|
|||||||
0 & 0 & 0 & 1 \\
|
0 & 0 & 0 & 1 \\
|
||||||
\end{array} \right]
|
\end{array} \right]
|
||||||
\end{equation}
|
\end{equation}
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Micro-Station Kinematics}
|
\subsubsection{Micro-Station Kinematics}
|
||||||
\label{ssec:ustation_kinematics}
|
\label{ssec:ustation_kinematics}
|
||||||
|
|
||||||
@ -3318,8 +3314,7 @@ Vibrations induced by scanning the translation stage and the spindle are also me
|
|||||||
|
|
||||||
The tilt stage and the micro-hexapod also have positioning errors; however, they are not modeled here because these two stages are only used for pre-positioning and not for scanning.
|
The tilt stage and the micro-hexapod also have positioning errors; however, they are not modeled here because these two stages are only used for pre-positioning and not for scanning.
|
||||||
Therefore, from a control perspective, they are not important.
|
Therefore, from a control perspective, they are not important.
|
||||||
\begin{enumerate}
|
\paragraph{Ground Motion}
|
||||||
\item Ground Motion
|
|
||||||
|
|
||||||
The ground motion was measured by using a sensitive 3-axis geophone shown in Figure \ref{fig:ustation_geophone_picture} placed on the ground.
|
The ground motion was measured by using a sensitive 3-axis geophone shown in Figure \ref{fig:ustation_geophone_picture} placed on the ground.
|
||||||
The generated voltages were recorded with a high resolution DAC, and converted to displacement using the Geophone sensitivity transfer function.
|
The generated voltages were recorded with a high resolution DAC, and converted to displacement using the Geophone sensitivity transfer function.
|
||||||
@ -3338,7 +3333,7 @@ The obtained ground motion displacement is shown in Figure \ref{fig:ustation_gro
|
|||||||
\captionof{figure}{\label{fig:ustation_geophone_picture}(3D) L-4C geophone}
|
\captionof{figure}{\label{fig:ustation_geophone_picture}(3D) L-4C geophone}
|
||||||
\end{center}
|
\end{center}
|
||||||
\end{minipage}
|
\end{minipage}
|
||||||
\item Ty Stage
|
\paragraph{Ty Stage}
|
||||||
|
|
||||||
To measure the positioning errors of the translation stage, the setup shown in Figure \ref{fig:ustation_errors_ty_setup} is used.
|
To measure the positioning errors of the translation stage, the setup shown in Figure \ref{fig:ustation_errors_ty_setup} is used.
|
||||||
A special optical element (called a ``straightness interferometer''\footnote{The special optics (straightness interferometer and reflector) are manufactured by Agilent (10774A).}) is fixed on top of the micro-station, while a laser source\footnote{Laser source is manufactured by Agilent (5519b).} and a straightness reflector are fixed on the ground.
|
A special optical element (called a ``straightness interferometer''\footnote{The special optics (straightness interferometer and reflector) are manufactured by Agilent (10774A).}) is fixed on top of the micro-station, while a laser source\footnote{Laser source is manufactured by Agilent (5519b).} and a straightness reflector are fixed on the ground.
|
||||||
@ -3372,7 +3367,7 @@ Similar result is obtained for the \(x\) lateral direction.
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:ustation_errors_dy}Measurement of the linear (vertical) deviation of the Translation stage (\subref{fig:ustation_errors_dy_vertical}). A linear fit is then removed from the data (\subref{fig:ustation_errors_dy_vertical_remove_mean}).}
|
\caption{\label{fig:ustation_errors_dy}Measurement of the linear (vertical) deviation of the Translation stage (\subref{fig:ustation_errors_dy_vertical}). A linear fit is then removed from the data (\subref{fig:ustation_errors_dy_vertical_remove_mean}).}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Spindle
|
\paragraph{Spindle}
|
||||||
|
|
||||||
To measure the positioning errors induced by the Spindle, a ``Spindle error analyzer''\footnote{The Spindle Error Analyzer is made by Lion Precision.} is used as shown in Figure \ref{fig:ustation_rz_meas_lion_setup}.
|
To measure the positioning errors induced by the Spindle, a ``Spindle error analyzer''\footnote{The Spindle Error Analyzer is made by Lion Precision.} is used as shown in Figure \ref{fig:ustation_rz_meas_lion_setup}.
|
||||||
A specific target is fixed on top of the micro-station, which consists of two sphere with 1 inch diameter precisely aligned with the spindle rotation axis.
|
A specific target is fixed on top of the micro-station, which consists of two sphere with 1 inch diameter precisely aligned with the spindle rotation axis.
|
||||||
@ -3424,7 +3419,6 @@ The vertical motion induced by scanning the spindle is in the order of \(\pm 30\
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:ustation_errors_spindle}Measurement of the radial (\subref{fig:ustation_errors_spindle_radial}), axial (\subref{fig:ustation_errors_spindle_axial}) and tilt (\subref{fig:ustation_errors_spindle_tilt}) Spindle errors during a 60rpm spindle rotation. The circular best fit is shown by the dashed circle. It represents the misalignment of the spheres with the rotation axis.}
|
\caption{\label{fig:ustation_errors_spindle}Measurement of the radial (\subref{fig:ustation_errors_spindle_radial}), axial (\subref{fig:ustation_errors_spindle_axial}) and tilt (\subref{fig:ustation_errors_spindle_tilt}) Spindle errors during a 60rpm spindle rotation. The circular best fit is shown by the dashed circle. It represents the misalignment of the spheres with the rotation axis.}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Sensitivity to disturbances}
|
\subsubsection{Sensitivity to disturbances}
|
||||||
\label{ssec:ustation_disturbances_sensitivity}
|
\label{ssec:ustation_disturbances_sensitivity}
|
||||||
|
|
||||||
@ -3826,8 +3820,7 @@ This is summarized in Figure \ref{fig:nhexa_stewart_notations}.
|
|||||||
\end{figure}
|
\end{figure}
|
||||||
\subsubsection{Kinematic Analysis}
|
\subsubsection{Kinematic Analysis}
|
||||||
\label{ssec:nhexa_stewart_platform_kinematics}
|
\label{ssec:nhexa_stewart_platform_kinematics}
|
||||||
\begin{enumerate}
|
\paragraph{Loop Closure}
|
||||||
\item Loop Closure
|
|
||||||
|
|
||||||
The foundation of the kinematic analysis lies in the geometric constraints imposed by each strut, which can be expressed using loop closure equations.
|
The foundation of the kinematic analysis lies in the geometric constraints imposed by each strut, which can be expressed using loop closure equations.
|
||||||
For each strut \(i\) (illustrated in Figure \ref{fig:nhexa_stewart_loop_closure}), the loop closure equation \eqref{eq:nhexa_loop_closure} can be written.
|
For each strut \(i\) (illustrated in Figure \ref{fig:nhexa_stewart_loop_closure}), the loop closure equation \eqref{eq:nhexa_loop_closure} can be written.
|
||||||
@ -3843,7 +3836,7 @@ This equation links the pose\footnote{The \emph{pose} represents the position an
|
|||||||
\includegraphics[scale=1]{figs/nhexa_stewart_loop_closure.png}
|
\includegraphics[scale=1]{figs/nhexa_stewart_loop_closure.png}
|
||||||
\caption{\label{fig:nhexa_stewart_loop_closure}Notations to compute the kinematic loop closure}
|
\caption{\label{fig:nhexa_stewart_loop_closure}Notations to compute the kinematic loop closure}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Inverse Kinematics
|
\paragraph{Inverse Kinematics}
|
||||||
|
|
||||||
The inverse kinematic problem involves determining the required strut lengths \(\bm{\mathcal{L}} = \left[ l_1, l_2, \ldots, l_6 \right]^{\intercal}\) for a desired platform pose \(\bm{\mathcal{X}}\) (i.e. position \({}^A\bm{P}\) and orientation \({}^A\bm{R}_B\)).
|
The inverse kinematic problem involves determining the required strut lengths \(\bm{\mathcal{L}} = \left[ l_1, l_2, \ldots, l_6 \right]^{\intercal}\) for a desired platform pose \(\bm{\mathcal{X}}\) (i.e. position \({}^A\bm{P}\) and orientation \({}^A\bm{R}_B\)).
|
||||||
This problem can be solved analytically using the loop closure equations \eqref{eq:nhexa_loop_closure}.
|
This problem can be solved analytically using the loop closure equations \eqref{eq:nhexa_loop_closure}.
|
||||||
@ -3855,7 +3848,7 @@ The obtained strut lengths are given by \eqref{eq:nhexa_inverse_kinematics}.
|
|||||||
|
|
||||||
If the position and orientation of the platform lie in the feasible workspace, the solution is unique.
|
If the position and orientation of the platform lie in the feasible workspace, the solution is unique.
|
||||||
While configurations outside this workspace yield complex numbers, this only becomes relevant for large displacements that far exceed the nano-hexapod's operating range.
|
While configurations outside this workspace yield complex numbers, this only becomes relevant for large displacements that far exceed the nano-hexapod's operating range.
|
||||||
\item Forward Kinematics
|
\paragraph{Forward Kinematics}
|
||||||
|
|
||||||
The forward kinematic problem seeks to determine the platform pose \(\bm{\mathcal{X}}\) given a set of strut lengths \(\bm{\mathcal{L}}\).
|
The forward kinematic problem seeks to determine the platform pose \(\bm{\mathcal{X}}\) given a set of strut lengths \(\bm{\mathcal{L}}\).
|
||||||
Unlike inverse kinematics, this presents a significant challenge because it requires solving a system of nonlinear equations.
|
Unlike inverse kinematics, this presents a significant challenge because it requires solving a system of nonlinear equations.
|
||||||
@ -3863,13 +3856,11 @@ Although various numerical methods exist for solving this problem, they can be c
|
|||||||
|
|
||||||
For the nano-hexapod application, where displacements are typically small, an approximate solution based on linearization around the operating point provides a practical alternative.
|
For the nano-hexapod application, where displacements are typically small, an approximate solution based on linearization around the operating point provides a practical alternative.
|
||||||
This approximation, which is developed in subsequent sections through the Jacobian matrix analysis, is particularly useful for real-time control applications.
|
This approximation, which is developed in subsequent sections through the Jacobian matrix analysis, is particularly useful for real-time control applications.
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{The Jacobian Matrix}
|
\subsubsection{The Jacobian Matrix}
|
||||||
\label{ssec:nhexa_stewart_platform_jacobian}
|
\label{ssec:nhexa_stewart_platform_jacobian}
|
||||||
The Jacobian matrix plays a central role in analyzing the Stewart platform's behavior, providing a linear mapping between the platform and actuator velocities.
|
The Jacobian matrix plays a central role in analyzing the Stewart platform's behavior, providing a linear mapping between the platform and actuator velocities.
|
||||||
While the previously derived kinematic relationships are essential for position analysis, the Jacobian enables velocity analysis and forms the foundation for both static and dynamic studies.
|
While the previously derived kinematic relationships are essential for position analysis, the Jacobian enables velocity analysis and forms the foundation for both static and dynamic studies.
|
||||||
\begin{enumerate}
|
\paragraph{Jacobian Computation}
|
||||||
\item Jacobian Computation
|
|
||||||
|
|
||||||
As discussed in Section \ref{ssec:nhexa_stewart_platform_kinematics}, the strut lengths \(\bm{\mathcal{L}}\) and the platform pose \(\bm{\mathcal{X}}\) are related through a system of nonlinear algebraic equations representing the kinematic constraints imposed by the struts.
|
As discussed in Section \ref{ssec:nhexa_stewart_platform_kinematics}, the strut lengths \(\bm{\mathcal{L}}\) and the platform pose \(\bm{\mathcal{X}}\) are related through a system of nonlinear algebraic equations representing the kinematic constraints imposed by the struts.
|
||||||
|
|
||||||
@ -3912,7 +3903,7 @@ The matrix \(\bm{J}\) is called the Jacobian matrix and is defined by \eqref{eq:
|
|||||||
|
|
||||||
Therefore, the Jacobian matrix \(\bm{J}\) links the rate of change of the strut length to the velocity and angular velocity of the top platform with respect to the fixed base through a set of linear equations.
|
Therefore, the Jacobian matrix \(\bm{J}\) links the rate of change of the strut length to the velocity and angular velocity of the top platform with respect to the fixed base through a set of linear equations.
|
||||||
However, \(\bm{J}\) needs to be recomputed for every Stewart platform pose because it depends on the actual pose of the manipulator.
|
However, \(\bm{J}\) needs to be recomputed for every Stewart platform pose because it depends on the actual pose of the manipulator.
|
||||||
\item Approximate solution to the Forward and Inverse Kinematic problems
|
\paragraph{Approximate solution to the Forward and Inverse Kinematic problems}
|
||||||
|
|
||||||
For small displacements \(\delta \bm{\mathcal{X}} = [\delta x, \delta y, \delta z, \delta \theta_x, \delta \theta_y, \delta \theta_z ]^{\intercal}\) around an operating point \(\bm{\mathcal{X}}_0\) (for which the Jacobian was computed), the associated joint displacement \(\delta\bm{\mathcal{L}} = [\delta l_1,\,\delta l_2,\,\delta l_3,\,\delta l_4,\,\delta l_5,\,\delta l_6]^{\intercal}\) can be computed using the Jacobian \eqref{eq:nhexa_inverse_kinematics_approximate}.
|
For small displacements \(\delta \bm{\mathcal{X}} = [\delta x, \delta y, \delta z, \delta \theta_x, \delta \theta_y, \delta \theta_z ]^{\intercal}\) around an operating point \(\bm{\mathcal{X}}_0\) (for which the Jacobian was computed), the associated joint displacement \(\delta\bm{\mathcal{L}} = [\delta l_1,\,\delta l_2,\,\delta l_3,\,\delta l_4,\,\delta l_5,\,\delta l_6]^{\intercal}\) can be computed using the Jacobian \eqref{eq:nhexa_inverse_kinematics_approximate}.
|
||||||
|
|
||||||
@ -3928,7 +3919,7 @@ Similarly, for small joint displacements \(\delta\bm{\mathcal{L}}\), it is possi
|
|||||||
|
|
||||||
These two relations solve the forward and inverse kinematic problems for small displacement in a \emph{approximate} way.
|
These two relations solve the forward and inverse kinematic problems for small displacement in a \emph{approximate} way.
|
||||||
While this approximation offers limited value for inverse kinematics, which can be solved analytically, it proves particularly useful for the forward kinematic problem where exact analytical solutions are difficult to obtain.
|
While this approximation offers limited value for inverse kinematics, which can be solved analytically, it proves particularly useful for the forward kinematic problem where exact analytical solutions are difficult to obtain.
|
||||||
\item Range validity of the approximate inverse kinematics
|
\paragraph{Range validity of the approximate inverse kinematics}
|
||||||
|
|
||||||
The accuracy of the Jacobian-based forward kinematics solution was estimated by a simple analysis.
|
The accuracy of the Jacobian-based forward kinematics solution was estimated by a simple analysis.
|
||||||
For a series of platform positions, the exact strut lengths are computed using the analytical inverse kinematics equation \eqref{eq:nhexa_inverse_kinematics}.
|
For a series of platform positions, the exact strut lengths are computed using the analytical inverse kinematics equation \eqref{eq:nhexa_inverse_kinematics}.
|
||||||
@ -3945,7 +3936,7 @@ It can be computed once at the rest position and used for both forward and inver
|
|||||||
\includegraphics[scale=1]{figs/nhexa_forward_kinematics_approximate_errors.png}
|
\includegraphics[scale=1]{figs/nhexa_forward_kinematics_approximate_errors.png}
|
||||||
\caption{\label{fig:nhexa_forward_kinematics_approximate_errors}Errors associated with the use of the Jacobian matrix to solve the forward kinematic problem. A Stewart platform with a height of \(100\,mm\) was used to perform this analysis. \(\epsilon_D\) corresponds to the distance between the true positioin and the estimated position. \(\epsilon_R\) corresponds to the angular motion between the true orientation and the estimated orientation.}
|
\caption{\label{fig:nhexa_forward_kinematics_approximate_errors}Errors associated with the use of the Jacobian matrix to solve the forward kinematic problem. A Stewart platform with a height of \(100\,mm\) was used to perform this analysis. \(\epsilon_D\) corresponds to the distance between the true positioin and the estimated position. \(\epsilon_R\) corresponds to the angular motion between the true orientation and the estimated orientation.}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Static Forces
|
\paragraph{Static Forces}
|
||||||
|
|
||||||
The static force analysis of the Stewart platform can be performed using the principle of virtual work.
|
The static force analysis of the Stewart platform can be performed using the principle of virtual work.
|
||||||
This principle states that for a system in static equilibrium, the total virtual work of all forces acting on the system must be zero for any virtual displacement compatible with the system's constraints.
|
This principle states that for a system in static equilibrium, the total virtual work of all forces acting on the system must be zero for any virtual displacement compatible with the system's constraints.
|
||||||
@ -3970,11 +3961,10 @@ Using the Jacobian relationship that links virtual displacements \eqref{eq:nhexa
|
|||||||
Because this equation must hold for any virtual displacement \(\delta \bm{\mathcal{X}}\), the force mapping relationships \eqref{eq:nhexa_jacobian_forces} can be derived.
|
Because this equation must hold for any virtual displacement \(\delta \bm{\mathcal{X}}\), the force mapping relationships \eqref{eq:nhexa_jacobian_forces} can be derived.
|
||||||
|
|
||||||
\begin{equation}\label{eq:nhexa_jacobian_forces}
|
\begin{equation}\label{eq:nhexa_jacobian_forces}
|
||||||
\bm{f}^{\intercal} \bm{J} - \bm{\mathcal{F}}^{\intercal} = 0 \quad \Rightarrow \quad \boxed{\bm{\mathcal{F}} = \bm{J}^{\intercal} \bm{f}} \quad \text{and} \quad \boxed{\bm{f} = \bm{J}^{-T} \bm{\mathcal{F}}}
|
\bm{f}^{\intercal} \bm{J} - \bm{\mathcal{F}}^{\intercal} = 0 \quad \Rightarrow \quad \boxed{\bm{\mathcal{F}} = \bm{J}^{\intercal} \bm{f}} \quad \text{and} \quad \boxed{\bm{f} = \bm{J}^{-\intercal} \bm{\mathcal{F}}}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
These equations establish that the transpose of the Jacobian matrix maps actuator forces to platform forces and torques, while its inverse transpose maps platform forces and torques to required actuator forces.
|
These equations establish that the transpose of the Jacobian matrix maps actuator forces to platform forces and torques, while its inverse transpose maps platform forces and torques to required actuator forces.
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Static Analysis}
|
\subsubsection{Static Analysis}
|
||||||
\label{ssec:nhexa_stewart_platform_static}
|
\label{ssec:nhexa_stewart_platform_static}
|
||||||
|
|
||||||
@ -4049,7 +4039,7 @@ The transfer function matrix in the Cartesian frame becomes \eqref{eq:nhexa_tran
|
|||||||
Through coordinate transformation using the Jacobian matrix, the dynamics in the actuator space is obtained \eqref{eq:nhexa_transfer_function_struts}.
|
Through coordinate transformation using the Jacobian matrix, the dynamics in the actuator space is obtained \eqref{eq:nhexa_transfer_function_struts}.
|
||||||
|
|
||||||
\begin{equation}\label{eq:nhexa_transfer_function_struts}
|
\begin{equation}\label{eq:nhexa_transfer_function_struts}
|
||||||
\frac{\bm{\mathcal{L}}}{\bm{f}}(s) = ( \bm{J}^{-T} \bm{M} \bm{J}^{-1} s^2 + \bm{\mathcal{C}} + \bm{\mathcal{K}} )^{-1}
|
\frac{\bm{\mathcal{L}}}{\bm{f}}(s) = ( \bm{J}^{-\intercal} \bm{M} \bm{J}^{-1} s^2 + \bm{\mathcal{C}} + \bm{\mathcal{K}} )^{-1}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
Although this simplified model provides useful insights, real Stewart platforms exhibit more complex behaviors.
|
Although this simplified model provides useful insights, real Stewart platforms exhibit more complex behaviors.
|
||||||
@ -4086,8 +4076,7 @@ The model is then validated through comparison with the analytical equations in
|
|||||||
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}).
|
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}).
|
||||||
\subsubsection{Model Definition}
|
\subsubsection{Model Definition}
|
||||||
\label{ssec:nhexa_model_def}
|
\label{ssec:nhexa_model_def}
|
||||||
\begin{enumerate}
|
\paragraph{Geometry}
|
||||||
\item 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 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 \({}^F\bm{a}_i\) and \({}^M\bm{b}_i\) respectively.
|
The joints connecting the actuators to these frames are located at positions \({}^F\bm{a}_i\) and \({}^M\bm{b}_i\) respectively.
|
||||||
@ -4130,13 +4119,13 @@ From these parameters, key kinematic properties can be derived: the strut orient
|
|||||||
\captionof{table}{\label{tab:nhexa_stewart_model_geometry}Parameter values in [mm]}
|
\captionof{table}{\label{tab:nhexa_stewart_model_geometry}Parameter values in [mm]}
|
||||||
\end{scriptsize}
|
\end{scriptsize}
|
||||||
\end{minipage}
|
\end{minipage}
|
||||||
\item Inertia of Plates
|
\paragraph{Inertia of Plates}
|
||||||
|
|
||||||
The fixed base and moving platform were modeled as solid cylindrical bodies.
|
The fixed base and moving platform were modeled as solid cylindrical bodies.
|
||||||
The base platform was characterized by a radius of \(120\,mm\) and thickness of \(15\,mm\), matching the dimensions of the micro-hexapod's top platform.
|
The base platform was 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 was similarly modeled with a radius of \(110\,mm\) and thickness of \(15\,mm\).
|
The moving platform was similarly modeled with a radius of \(110\,mm\) and thickness of \(15\,mm\).
|
||||||
Both platforms were assigned a mass of \(5\,kg\).
|
Both platforms were assigned a mass of \(5\,kg\).
|
||||||
\item Joints
|
\paragraph{Joints}
|
||||||
|
|
||||||
The platform's joints play a crucial role in its dynamic behavior.
|
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.
|
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.
|
||||||
@ -4144,7 +4133,7 @@ For each degree of freedom, stiffness characteristics can be incorporated into t
|
|||||||
|
|
||||||
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.
|
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.
|
These joints are considered massless and exhibit no stiffness along their degrees of freedom.
|
||||||
\item Actuators
|
\paragraph{Actuators}
|
||||||
|
|
||||||
The actuator model comprises several key elements (Figure \ref{fig:nhexa_actuator_model}).
|
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\).
|
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\).
|
||||||
@ -4177,7 +4166,6 @@ This modular approach to actuator modeling allows for future refinements as the
|
|||||||
\captionof{table}{\label{tab:nhexa_actuator_parameters}Actuator parameters}
|
\captionof{table}{\label{tab:nhexa_actuator_parameters}Actuator parameters}
|
||||||
\end{scriptsize}
|
\end{scriptsize}
|
||||||
\end{minipage}
|
\end{minipage}
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Validation of the multi-body model}
|
\subsubsection{Validation of the multi-body model}
|
||||||
\label{ssec:nhexa_model_validation}
|
\label{ssec:nhexa_model_validation}
|
||||||
|
|
||||||
@ -4242,7 +4230,7 @@ This reduction from six to four observable modes is attributed to the system's s
|
|||||||
The system's behavior can be characterized in three frequency regions.
|
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: \(\bm{G}(j\omega) \xrightarrow[\omega \to 0]{} \bm{\mathcal{K}}^{-1}\).
|
At low frequencies, well below the first resonance, the plant demonstrates good decoupling between actuators, with the response dominated by the strut stiffness: \(\bm{G}(j\omega) \xrightarrow[\omega \to 0]{} \bm{\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.
|
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: \(\bm{G}(j\omega) \xrightarrow[\omega \to \infty]{} \bm{J} \bm{M}^{-T} \bm{J}^{\intercal} \frac{-1}{\omega^2}\)
|
At high frequencies, above the highest resonance, the response is governed by the payload's inertia mapped to the strut coordinates: \(\bm{G}(j\omega) \xrightarrow[\omega \to \infty]{} \bm{J} \bm{M}^{-\intercal} \bm{J}^{\intercal} \frac{-1}{\omega^2}\)
|
||||||
|
|
||||||
The force sensor transfer functions, shown in Figure \ref{fig:nhexa_multi_body_plant_fm}, display characteristics typical of collocated actuator-sensor pairs.
|
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.
|
Each actuator's transfer function to its associated force sensor exhibits alternating complex conjugate poles and zeros.
|
||||||
@ -4313,8 +4301,7 @@ In the context of the nano-hexapod, two distinct control strategies were examine
|
|||||||
|
|
||||||
When controlling a Stewart platform using external metrology that measures the pose of frame \(\{B\}\) with respect to \(\{A\}\), denoted as \(\bm{\mathcal{X}}\), the control architecture can be implemented in either Cartesian or strut space.
|
When controlling a Stewart platform using external metrology that measures the pose of frame \(\{B\}\) with respect to \(\{A\}\), denoted as \(\bm{\mathcal{X}}\), the control architecture can be implemented in either Cartesian or strut space.
|
||||||
This choice affects both the control design and the obtained performance.
|
This choice affects both the control design and the obtained performance.
|
||||||
\begin{enumerate}
|
\paragraph{Control in the Strut space}
|
||||||
\item Control in the Strut space
|
|
||||||
|
|
||||||
In this approach, as illustrated in Figure \ref{fig:nhexa_control_strut}, the control is performed in the space of the struts.
|
In this approach, as illustrated in Figure \ref{fig:nhexa_control_strut}, the control is performed in the space of the struts.
|
||||||
The Jacobian matrix is used to solve the inverse kinematics in real-time by mapping position errors from Cartesian space \(\bm{\epsilon}_{\mathcal{X}}\) to strut space \(\bm{\epsilon}_{\mathcal{L}}\).
|
The Jacobian matrix is used to solve the inverse kinematics in real-time by mapping position errors from Cartesian space \(\bm{\epsilon}_{\mathcal{X}}\) to strut space \(\bm{\epsilon}_{\mathcal{L}}\).
|
||||||
@ -4338,11 +4325,11 @@ Furthermore, at low frequencies, the plant exhibits good decoupling between the
|
|||||||
\begin{center}
|
\begin{center}
|
||||||
\includegraphics[scale=1,scale=1]{figs/nhexa_control_cartesian.png}
|
\includegraphics[scale=1,scale=1]{figs/nhexa_control_cartesian.png}
|
||||||
\end{center}
|
\end{center}
|
||||||
\subcaption{\label{fig:nhexa_control_cartesian}Control in the Cartesian frame. $\bm{J}^{-T}$ is used to project force and torques on each strut}
|
\subcaption{\label{fig:nhexa_control_cartesian}Control in the Cartesian frame. $\bm{J}^{-\intercal}$ is used to project force and torques on each strut}
|
||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:nhexa_control_frame}Two control strategies}
|
\caption{\label{fig:nhexa_control_frame}Two control strategies}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Control in Cartesian Space
|
\paragraph{Control in Cartesian Space}
|
||||||
|
|
||||||
Alternatively, control can be implemented directly in Cartesian space, as illustrated in Figure \ref{fig:nhexa_control_cartesian}.
|
Alternatively, control can be implemented directly in Cartesian space, as illustrated in Figure \ref{fig:nhexa_control_cartesian}.
|
||||||
Here, the controller processes Cartesian errors \(\bm{\epsilon}_{\mathcal{X}}\) to generate forces and torques \(\bm{\mathcal{F}}\), which are then mapped to actuator forces using the transpose of the inverse Jacobian matrix \eqref{eq:nhexa_jacobian_forces}.
|
Here, the controller processes Cartesian errors \(\bm{\epsilon}_{\mathcal{X}}\) to generate forces and torques \(\bm{\mathcal{F}}\), which are then mapped to actuator forces using the transpose of the inverse Jacobian matrix \eqref{eq:nhexa_jacobian_forces}.
|
||||||
@ -4372,7 +4359,6 @@ More sophisticated control strategies will be explored during the detailed desig
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:nhexa_plant_frame}Bode plot of the transfer functions computed from the nano-hexapod multi-body model}
|
\caption{\label{fig:nhexa_plant_frame}Bode plot of the transfer functions computed from the nano-hexapod multi-body model}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Active Damping with Decentralized IFF}
|
\subsubsection{Active Damping with Decentralized IFF}
|
||||||
\label{ssec:nhexa_control_iff}
|
\label{ssec:nhexa_control_iff}
|
||||||
|
|
||||||
@ -5174,8 +5160,7 @@ The analysis is significantly simplified when considering small motions, as the
|
|||||||
|
|
||||||
Therefore, the mobility of the Stewart platform (defined as the set of achievable \([\delta x\ \delta y\ \delta z\ \delta \theta_x\ \delta \theta_y\ \delta \theta_z]\)) depends on two key factors: the stroke of each strut and the geometry of the Stewart platform (embodied in the Jacobian matrix).
|
Therefore, the mobility of the Stewart platform (defined as the set of achievable \([\delta x\ \delta y\ \delta z\ \delta \theta_x\ \delta \theta_y\ \delta \theta_z]\)) depends on two key factors: the stroke of each strut and the geometry of the Stewart platform (embodied in the Jacobian matrix).
|
||||||
More specifically, the XYZ mobility only depends on the \(\hat{\bm{s}}_i\) (orientation of struts), while the mobility in rotation also depends on \(\bm{b}_i\) (position of top joints).
|
More specifically, the XYZ mobility only depends on the \(\hat{\bm{s}}_i\) (orientation of struts), while the mobility in rotation also depends on \(\bm{b}_i\) (position of top joints).
|
||||||
\begin{enumerate}
|
\paragraph{Mobility in translation}
|
||||||
\item Mobility in translation
|
|
||||||
|
|
||||||
For simplicity, only translations are first considered (i.e., the Stewart platform is considered to have fixed orientation).
|
For simplicity, only translations are first considered (i.e., the Stewart platform is considered to have fixed orientation).
|
||||||
In the general case, the translational mobility can be represented by a 3D shape having 12 faces, where each actuator limits the stroke along its axis in positive and negative directions.
|
In the general case, the translational mobility can be represented by a 3D shape having 12 faces, where each actuator limits the stroke along its axis in positive and negative directions.
|
||||||
@ -5230,7 +5215,7 @@ The amplification factor increases when the struts have a high angle with the di
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_stewart_mobility_translation_examples}Effect of strut orientation on the obtained mobility in translation. Two Stewart platform geometry are considered: struts oriented vertically (\subref{fig:detail_kinematics_stewart_mobility_vert_struts}) and struts oriented vertically (\subref{fig:detail_kinematics_stewart_mobility_hori_struts}). Obtained mobility for both geometry are shown in (\subref{fig:detail_kinematics_mobility_translation_strut_orientation}).}
|
\caption{\label{fig:detail_kinematics_stewart_mobility_translation_examples}Effect of strut orientation on the obtained mobility in translation. Two Stewart platform geometry are considered: struts oriented vertically (\subref{fig:detail_kinematics_stewart_mobility_vert_struts}) and struts oriented vertically (\subref{fig:detail_kinematics_stewart_mobility_hori_struts}). Obtained mobility for both geometry are shown in (\subref{fig:detail_kinematics_mobility_translation_strut_orientation}).}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Mobility in rotation
|
\paragraph{Mobility in rotation}
|
||||||
|
|
||||||
As shown by equation \eqref{eq:detail_kinematics_jacobian}, the rotational mobility depends both on the orientation of the struts and on the location of the top joints.
|
As shown by equation \eqref{eq:detail_kinematics_jacobian}, the rotational mobility depends both on the orientation of the struts and on the location of the top joints.
|
||||||
Similarly to the translational case, to increase the rotational mobility in one direction, it is advantageous to have the struts more perpendicular to the rotational direction.
|
Similarly to the translational case, to increase the rotational mobility in one direction, it is advantageous to have the struts more perpendicular to the rotational direction.
|
||||||
@ -5262,12 +5247,11 @@ Having struts further apart decreases the ``lever arm'' and therefore reduces th
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_stewart_mobility_rotation_examples}Effect of strut position on the obtained mobility in rotation. Two Stewart platform geometry are considered: struts close to each other (\subref{fig:detail_kinematics_stewart_mobility_close_struts}) and struts further appart (\subref{fig:detail_kinematics_stewart_mobility_space_struts}). Obtained mobility for both geometry are shown in (\subref{fig:detail_kinematics_mobility_angle_strut_distance}).}
|
\caption{\label{fig:detail_kinematics_stewart_mobility_rotation_examples}Effect of strut position on the obtained mobility in rotation. Two Stewart platform geometry are considered: struts close to each other (\subref{fig:detail_kinematics_stewart_mobility_close_struts}) and struts further appart (\subref{fig:detail_kinematics_stewart_mobility_space_struts}). Obtained mobility for both geometry are shown in (\subref{fig:detail_kinematics_mobility_angle_strut_distance}).}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Combined translations and rotations
|
\paragraph{Combined translations and rotations}
|
||||||
|
|
||||||
It is possible to consider combined translations and rotations, although displaying such mobility becomes more complex.
|
It is possible to consider combined translations and rotations, although displaying such mobility becomes more complex.
|
||||||
For a fixed geometry and a desired mobility (combined translations and rotations), it is possible to estimate the required minimum actuator stroke.
|
For a fixed geometry and a desired mobility (combined translations and rotations), it is possible to estimate the required minimum actuator stroke.
|
||||||
This analysis is conducted in Section \ref{sec:detail_kinematics_nano_hexapod} to estimate the required actuator stroke for the nano-hexapod geometry.
|
This analysis is conducted in Section \ref{sec:detail_kinematics_nano_hexapod} to estimate the required actuator stroke for the nano-hexapod geometry.
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Stiffness}
|
\subsubsection{Stiffness}
|
||||||
\label{ssec:detail_kinematics_geometry_stiffness}
|
\label{ssec:detail_kinematics_geometry_stiffness}
|
||||||
The stiffness matrix defines how the top platform of the Stewart platform (i.e. frame \(\{B\}\)) deforms with respect to its fixed base (i.e. frame \(\{A\}\)) due to static forces/torques applied between frames \(\{A\}\) and \(\{B\}\).
|
The stiffness matrix defines how the top platform of the Stewart platform (i.e. frame \(\{B\}\)) deforms with respect to its fixed base (i.e. frame \(\{A\}\)) due to static forces/torques applied between frames \(\{A\}\) and \(\{B\}\).
|
||||||
@ -5292,8 +5276,7 @@ In that case, the obtained stiffness matrix linearly depends on the strut stiffn
|
|||||||
\end{array}
|
\end{array}
|
||||||
\right]
|
\right]
|
||||||
\end{equation}
|
\end{equation}
|
||||||
\begin{enumerate}
|
\paragraph{Translation Stiffness}
|
||||||
\item Translation Stiffness
|
|
||||||
|
|
||||||
As shown by equation \eqref{eq:detail_kinematics_stiffness_matrix_simplified}, the translation stiffnesses (the \(3 \times 3\) top left terms of the stiffness matrix) only depend on the orientation of the struts and not their location: \(\hat{\bm{s}}_i \cdot \hat{\bm{s}}_i^{\intercal}\).
|
As shown by equation \eqref{eq:detail_kinematics_stiffness_matrix_simplified}, the translation stiffnesses (the \(3 \times 3\) top left terms of the stiffness matrix) only depend on the orientation of the struts and not their location: \(\hat{\bm{s}}_i \cdot \hat{\bm{s}}_i^{\intercal}\).
|
||||||
In the extreme case where all struts are vertical (\(s_i = [0\ 0\ 1]\)), a vertical stiffness of \(6k\) is achieved, but with null stiffness in the horizontal directions.
|
In the extreme case where all struts are vertical (\(s_i = [0\ 0\ 1]\)), a vertical stiffness of \(6k\) is achieved, but with null stiffness in the horizontal directions.
|
||||||
@ -5303,18 +5286,17 @@ This configuration corresponds to the cubic architecture presented in Section \r
|
|||||||
When the struts are oriented more vertically, as shown in Figure \ref{fig:detail_kinematics_stewart_mobility_vert_struts}, the vertical stiffness increases while the horizontal stiffness decreases.
|
When the struts are oriented more vertically, as shown in Figure \ref{fig:detail_kinematics_stewart_mobility_vert_struts}, the vertical stiffness increases while the horizontal stiffness decreases.
|
||||||
Additionally, \(R_x\) and \(R_y\) stiffness increases while \(R_z\) stiffness decreases.
|
Additionally, \(R_x\) and \(R_y\) stiffness increases while \(R_z\) stiffness decreases.
|
||||||
The opposite conclusions apply if struts are oriented more horizontally, illustrated in Figure \ref{fig:detail_kinematics_stewart_mobility_hori_struts}.
|
The opposite conclusions apply if struts are oriented more horizontally, illustrated in Figure \ref{fig:detail_kinematics_stewart_mobility_hori_struts}.
|
||||||
\item Rotational Stiffness
|
\paragraph{Rotational Stiffness}
|
||||||
|
|
||||||
The rotational stiffnesses depend both on the orientation of the struts and on the location of the top joints with respect to the considered center of rotation (i.e., the location of frame \(\{A\}\)).
|
The rotational stiffnesses depend both on the orientation of the struts and on the location of the top joints with respect to the considered center of rotation (i.e., the location of frame \(\{A\}\)).
|
||||||
With the same orientation but increased distances to the frame \(\{A\}\) by a factor of 2, the rotational stiffness is increased by a factor of 4.
|
With the same orientation but increased distances to the frame \(\{A\}\) by a factor of 2, the rotational stiffness is increased by a factor of 4.
|
||||||
Therefore, the compact Stewart platform depicted in Figure \ref{fig:detail_kinematics_stewart_mobility_close_struts} has less rotational stiffness than the Stewart platform shown in Figure \ref{fig:detail_kinematics_stewart_mobility_space_struts}.
|
Therefore, the compact Stewart platform depicted in Figure \ref{fig:detail_kinematics_stewart_mobility_close_struts} has less rotational stiffness than the Stewart platform shown in Figure \ref{fig:detail_kinematics_stewart_mobility_space_struts}.
|
||||||
\item Diagonal Stiffness Matrix
|
\paragraph{Diagonal Stiffness Matrix}
|
||||||
|
|
||||||
Having a diagonal stiffness matrix \(\bm{K}\) can be beneficial for control purposes as it would make the plant in the Cartesian frame decoupled at low frequency.
|
Having a diagonal stiffness matrix \(\bm{K}\) can be beneficial for control purposes as it would make the plant in the Cartesian frame decoupled at low frequency.
|
||||||
This property depends on both the geometry and the chosen \(\{A\}\) frame.
|
This property depends on both the geometry and the chosen \(\{A\}\) frame.
|
||||||
For specific geometry and choice of \(\{A\}\) frame, it is possible to achieve a diagonal \(K\) matrix.
|
For specific geometry and choice of \(\{A\}\) frame, it is possible to achieve a diagonal \(K\) matrix.
|
||||||
This is discussed in Section \ref{ssec:detail_kinematics_cubic_static}.
|
This is discussed in Section \ref{ssec:detail_kinematics_cubic_static}.
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Dynamical properties}
|
\subsubsection{Dynamical properties}
|
||||||
\label{ssec:detail_kinematics_geometry_dynamics}
|
\label{ssec:detail_kinematics_geometry_dynamics}
|
||||||
|
|
||||||
@ -5331,7 +5313,7 @@ In the frame of the struts, the equations of motion \eqref{eq:detail_kinematics_
|
|||||||
This is why most Stewart platforms are controlled in the frame of the struts: below the resonance frequency, the system is well decoupled and SISO control may be applied for each strut, independently of the payload being used.
|
This is why most Stewart platforms are controlled in the frame of the struts: below the resonance frequency, the system is well decoupled and SISO control may be applied for each strut, independently of the payload being used.
|
||||||
|
|
||||||
\begin{equation}\label{eq:detail_kinematics_transfer_function_struts}
|
\begin{equation}\label{eq:detail_kinematics_transfer_function_struts}
|
||||||
\frac{\bm{\mathcal{L}}}{\bm{f}}(s) = ( \bm{J}^{-T} \bm{M} \bm{J}^{-1} s^2 + \bm{\mathcal{C}} + \bm{\mathcal{K}} )^{-1}
|
\frac{\bm{\mathcal{L}}}{\bm{f}}(s) = ( \bm{J}^{-\intercal} \bm{M} \bm{J}^{-1} s^2 + \bm{\mathcal{C}} + \bm{\mathcal{K}} )^{-1}
|
||||||
\end{equation}
|
\end{equation}
|
||||||
|
|
||||||
Coupling between sensors (force sensors, relative position sensors or inertial sensors) in different struts may also be important for decentralized control.
|
Coupling between sensors (force sensors, relative position sensors or inertial sensors) in different struts may also be important for decentralized control.
|
||||||
@ -5397,8 +5379,7 @@ Given that the cubic architecture imposes strict geometric constraints, alternat
|
|||||||
The ultimate objective is to determine the suitability of the cubic architecture for the nano-hexapod.
|
The ultimate objective is to determine the suitability of the cubic architecture for the nano-hexapod.
|
||||||
\subsubsection{Static Properties}
|
\subsubsection{Static Properties}
|
||||||
\label{ssec:detail_kinematics_cubic_static}
|
\label{ssec:detail_kinematics_cubic_static}
|
||||||
\begin{enumerate}
|
\paragraph{Stiffness matrix for the Cubic architecture}
|
||||||
\item Stiffness matrix for the Cubic architecture
|
|
||||||
|
|
||||||
Consider the cubic architecture shown in Figure \ref{fig:detail_kinematics_cubic_schematic_full}.
|
Consider the cubic architecture shown in Figure \ref{fig:detail_kinematics_cubic_schematic_full}.
|
||||||
The unit vectors corresponding to the edges of the cube are described by equation \eqref{eq:detail_kinematics_cubic_s}.
|
The unit vectors corresponding to the edges of the cube are described by equation \eqref{eq:detail_kinematics_cubic_s}.
|
||||||
@ -5460,7 +5441,7 @@ In that case, the location of the top joints can be expressed by equation \eqref
|
|||||||
The stiffness matrix is therefore diagonal when the considered \(\{B\}\) frame is located at the center of the cube (shown by frame \(\{C\}\)).
|
The stiffness matrix is therefore diagonal when the considered \(\{B\}\) frame is located at the center of the cube (shown by frame \(\{C\}\)).
|
||||||
This means that static forces (resp torques) applied at the cube's center will induce pure translations (resp rotations around the cube's center).
|
This means that static forces (resp torques) applied at the cube's center will induce pure translations (resp rotations around the cube's center).
|
||||||
This specific location where the stiffness matrix is diagonal is referred to as the ``Center of Stiffness'' (analogous to the ``Center of Mass'' where the mass matrix is diagonal).
|
This specific location where the stiffness matrix is diagonal is referred to as the ``Center of Stiffness'' (analogous to the ``Center of Mass'' where the mass matrix is diagonal).
|
||||||
\item Effect of having frame \(\{B\}\) off-centered
|
\paragraph{Effect of having frame \(\{B\}\) off-centered}
|
||||||
|
|
||||||
When the reference frames \(\{A\}\) and \(\{B\}\) are shifted from the cube's center, off-diagonal elements emerge in the stiffness matrix.
|
When the reference frames \(\{A\}\) and \(\{B\}\) are shifted from the cube's center, off-diagonal elements emerge in the stiffness matrix.
|
||||||
|
|
||||||
@ -5484,7 +5465,7 @@ This poses a practical limitation, as in most applications, the relevant frame (
|
|||||||
|
|
||||||
It should be noted that for the stiffness matrix to be diagonal, the cube's center doesn't need to coincide with the geometric center of the Stewart platform.
|
It should be noted that for the stiffness matrix to be diagonal, the cube's center doesn't need to coincide with the geometric center of the Stewart platform.
|
||||||
This observation leads to the interesting alternative architectures presented in Section \ref{ssec:detail_kinematics_cubic_design}.
|
This observation leads to the interesting alternative architectures presented in Section \ref{ssec:detail_kinematics_cubic_design}.
|
||||||
\item Uniform Mobility
|
\paragraph{Uniform Mobility}
|
||||||
|
|
||||||
The translational mobility of the Stewart platform with constant orientation was analyzed.
|
The translational mobility of the Stewart platform with constant orientation was analyzed.
|
||||||
Considering limited actuator stroke (elongation of each strut), the maximum achievable positions in XYZ space were estimated.
|
Considering limited actuator stroke (elongation of each strut), the maximum achievable positions in XYZ space were estimated.
|
||||||
@ -5512,7 +5493,6 @@ Furthermore, an inverse relationship exists between the cube's dimension and rot
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_cubic_mobility}Mobility of a Stewart platform with Cubic architecture. Both for translations (\subref{fig:detail_kinematics_cubic_mobility_translations}) and rotations (\subref{fig:detail_kinematics_cubic_mobility_rotations})}
|
\caption{\label{fig:detail_kinematics_cubic_mobility}Mobility of a Stewart platform with Cubic architecture. Both for translations (\subref{fig:detail_kinematics_cubic_mobility_translations}) and rotations (\subref{fig:detail_kinematics_cubic_mobility_rotations})}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Dynamical Decoupling}
|
\subsubsection{Dynamical Decoupling}
|
||||||
\label{ssec:detail_kinematics_cubic_dynamic}
|
\label{ssec:detail_kinematics_cubic_dynamic}
|
||||||
This section examines the dynamics of the cubic architecture in the Cartesian frame which corresponds to the transfer function from forces and torques \(\bm{\mathcal{F}}\) to translations and rotations \(\bm{\mathcal{X}}\) of the top platform.
|
This section examines the dynamics of the cubic architecture in the Cartesian frame which corresponds to the transfer function from forces and torques \(\bm{\mathcal{F}}\) to translations and rotations \(\bm{\mathcal{X}}\) of the top platform.
|
||||||
@ -5523,8 +5503,7 @@ When relative motion sensors are integrated in each strut (measuring \(\bm{\math
|
|||||||
\includegraphics[scale=1]{figs/detail_kinematics_centralized_control.png}
|
\includegraphics[scale=1]{figs/detail_kinematics_centralized_control.png}
|
||||||
\caption{\label{fig:detail_kinematics_centralized_control}Typical control architecture in the cartesian frame}
|
\caption{\label{fig:detail_kinematics_centralized_control}Typical control architecture in the cartesian frame}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\begin{enumerate}
|
\paragraph{Low frequency and High frequency coupling}
|
||||||
\item Low frequency and High frequency coupling
|
|
||||||
|
|
||||||
As derived during the conceptual design phase, the dynamics from \(\bm{\mathcal{F}}\) to \(\bm{\mathcal{X}}\) is described by Equation \eqref{eq:detail_kinematics_transfer_function_cart}.
|
As derived during the conceptual design phase, the dynamics from \(\bm{\mathcal{F}}\) to \(\bm{\mathcal{X}}\) is described by Equation \eqref{eq:detail_kinematics_transfer_function_cart}.
|
||||||
At low frequency, the behavior of the platform depends on the stiffness matrix \eqref{eq:detail_kinematics_transfer_function_cart_low_freq}.
|
At low frequency, the behavior of the platform depends on the stiffness matrix \eqref{eq:detail_kinematics_transfer_function_cart_low_freq}.
|
||||||
@ -5569,7 +5548,7 @@ Conversely, when positioned at the center of stiffness, coupling occurred at hig
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_cubic_cart_coupling}Transfer functions for a Cubic Stewart platform expressed in the Cartesian frame. Two locations of the \(\{B\}\) frame are considered: at the center of mass of the moving body (\subref{fig:detail_kinematics_cubic_cart_coupling_com}) and at the cube's center (\subref{fig:detail_kinematics_cubic_cart_coupling_cok}).}
|
\caption{\label{fig:detail_kinematics_cubic_cart_coupling}Transfer functions for a Cubic Stewart platform expressed in the Cartesian frame. Two locations of the \(\{B\}\) frame are considered: at the center of mass of the moving body (\subref{fig:detail_kinematics_cubic_cart_coupling_com}) and at the cube's center (\subref{fig:detail_kinematics_cubic_cart_coupling_cok}).}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Payload's CoM at the cube's center
|
\paragraph{Payload's CoM at the cube's center}
|
||||||
|
|
||||||
An effective strategy for improving dynamical performances involves aligning the cube's center (center of stiffness) with the center of mass of the moving components \cite{li01_simul_fault_vibrat_isolat_point}.
|
An effective strategy for improving dynamical performances involves aligning the cube's center (center of stiffness) with the center of mass of the moving components \cite{li01_simul_fault_vibrat_isolat_point}.
|
||||||
This can be achieved by positioning the payload below the top platform, such that the center of mass of the moving body coincides with the cube's center (Figure \ref{fig:detail_kinematics_cubic_centered_payload}).
|
This can be achieved by positioning the payload below the top platform, such that the center of mass of the moving body coincides with the cube's center (Figure \ref{fig:detail_kinematics_cubic_centered_payload}).
|
||||||
@ -5593,14 +5572,13 @@ If a design similar to Figure \ref{fig:detail_kinematics_cubic_centered_payload}
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_cubic_com_cok}Cubic Stewart platform with payload at the cube's center (\subref{fig:detail_kinematics_cubic_centered_payload}). Obtained cartesian plant is fully decoupled (\subref{fig:detail_kinematics_cubic_cart_coupling_com_cok})}
|
\caption{\label{fig:detail_kinematics_cubic_com_cok}Cubic Stewart platform with payload at the cube's center (\subref{fig:detail_kinematics_cubic_centered_payload}). Obtained cartesian plant is fully decoupled (\subref{fig:detail_kinematics_cubic_cart_coupling_com_cok})}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Conclusion
|
\paragraph{Conclusion}
|
||||||
|
|
||||||
The analysis of dynamical properties of the cubic architecture yields several important conclusions.
|
The analysis of dynamical properties of the cubic architecture yields several important conclusions.
|
||||||
Static decoupling, characterized by a diagonal stiffness matrix, is achieved when reference frames \(\{A\}\) and \(\{B\}\) are positioned at the cube's center.
|
Static decoupling, characterized by a diagonal stiffness matrix, is achieved when reference frames \(\{A\}\) and \(\{B\}\) are positioned at the cube's center.
|
||||||
Note that this property can also be obtained with non-cubic architectures that exhibit symmetrical strut arrangements.
|
Note that this property can also be obtained with non-cubic architectures that exhibit symmetrical strut arrangements.
|
||||||
Dynamic decoupling requires both static decoupling and coincidence of the mobile platform's center of mass with reference frame \(\{B\}\).
|
Dynamic decoupling requires both static decoupling and coincidence of the mobile platform's center of mass with reference frame \(\{B\}\).
|
||||||
While this configuration offers powerful control advantages, it requires positioning the payload at the cube's center, which is highly restrictive and often impractical.
|
While this configuration offers powerful control advantages, it requires positioning the payload at the cube's center, which is highly restrictive and often impractical.
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Decentralized Control}
|
\subsubsection{Decentralized Control}
|
||||||
\label{ssec:detail_kinematics_decentralized_control}
|
\label{ssec:detail_kinematics_decentralized_control}
|
||||||
The orthogonal arrangement of struts in the cubic architecture suggests a potential minimization of inter-strut coupling, which could theoretically create favorable conditions for decentralized control.
|
The orthogonal arrangement of struts in the cubic architecture suggests a potential minimization of inter-strut coupling, which could theoretically create favorable conditions for decentralized control.
|
||||||
@ -5622,8 +5600,7 @@ The second uses a non-cubic Stewart platform shown in Figure \ref{fig:detail_kin
|
|||||||
\includegraphics[scale=1,width=0.6\linewidth]{figs/detail_kinematics_non_cubic_payload.png}
|
\includegraphics[scale=1,width=0.6\linewidth]{figs/detail_kinematics_non_cubic_payload.png}
|
||||||
\caption{\label{fig:detail_kinematics_non_cubic_payload}Stewart platform with non-cubic architecture}
|
\caption{\label{fig:detail_kinematics_non_cubic_payload}Stewart platform with non-cubic architecture}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\begin{enumerate}
|
\paragraph{Relative Displacement Sensors}
|
||||||
\item Relative Displacement Sensors
|
|
||||||
|
|
||||||
The transfer functions from actuator force in each strut to the relative motion of the struts are presented in Figure \ref{fig:detail_kinematics_decentralized_dL}.
|
The transfer functions from actuator force in each strut to the relative motion of the struts are presented in Figure \ref{fig:detail_kinematics_decentralized_dL}.
|
||||||
As anticipated from the equations of motion from \(\bm{f}\) to \(\bm{\mathcal{L}}\) \eqref{eq:detail_kinematics_transfer_function_struts}, the \(6 \times 6\) plant is decoupled at low frequency.
|
As anticipated from the equations of motion from \(\bm{f}\) to \(\bm{\mathcal{L}}\) \eqref{eq:detail_kinematics_transfer_function_struts}, the \(6 \times 6\) plant is decoupled at low frequency.
|
||||||
@ -5647,7 +5624,7 @@ The resonance frequencies differ between the two cases because the more vertical
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_decentralized_dL}Bode plot of the transfer functions from actuator force to relative displacement sensor in each strut. Both for a non-cubic architecture (\subref{fig:detail_kinematics_non_cubic_decentralized_dL}) and for a cubic architecture (\subref{fig:detail_kinematics_cubic_decentralized_dL})}
|
\caption{\label{fig:detail_kinematics_decentralized_dL}Bode plot of the transfer functions from actuator force to relative displacement sensor in each strut. Both for a non-cubic architecture (\subref{fig:detail_kinematics_non_cubic_decentralized_dL}) and for a cubic architecture (\subref{fig:detail_kinematics_cubic_decentralized_dL})}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Force Sensors
|
\paragraph{Force Sensors}
|
||||||
|
|
||||||
Similarly, the transfer functions from actuator force to force sensors in each strut were analyzed for both cubic and non-cubic Stewart platforms.
|
Similarly, the transfer functions from actuator force to force sensors in each strut were analyzed for both cubic and non-cubic Stewart platforms.
|
||||||
The results are presented in Figure \ref{fig:detail_kinematics_decentralized_fn}.
|
The results are presented in Figure \ref{fig:detail_kinematics_decentralized_fn}.
|
||||||
@ -5668,11 +5645,10 @@ The system demonstrates good decoupling at high frequency in both cases, with no
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_decentralized_fn}Bode plot of the transfer functions from actuator force to force sensor in each strut. Both for a non-cubic architecture (\subref{fig:detail_kinematics_non_cubic_decentralized_fn}) and for a cubic architecture (\subref{fig:detail_kinematics_cubic_decentralized_fn})}
|
\caption{\label{fig:detail_kinematics_decentralized_fn}Bode plot of the transfer functions from actuator force to force sensor in each strut. Both for a non-cubic architecture (\subref{fig:detail_kinematics_non_cubic_decentralized_fn}) and for a cubic architecture (\subref{fig:detail_kinematics_cubic_decentralized_fn})}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Conclusion
|
\paragraph{Conclusion}
|
||||||
|
|
||||||
The presented results do not demonstrate the pronounced decoupling advantages often associated with cubic architectures in the literature.
|
The presented results do not demonstrate the pronounced decoupling advantages often associated with cubic architectures in the literature.
|
||||||
Both the cubic and non-cubic configurations exhibited similar coupling characteristics, suggesting that the benefits of orthogonal strut arrangement for decentralized control is less obvious than often reported in the literature.
|
Both the cubic and non-cubic configurations exhibited similar coupling characteristics, suggesting that the benefits of orthogonal strut arrangement for decentralized control is less obvious than often reported in the literature.
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Cubic architecture with Cube's center above the top platform}
|
\subsubsection{Cubic architecture with Cube's center above the top platform}
|
||||||
\label{ssec:detail_kinematics_cubic_design}
|
\label{ssec:detail_kinematics_cubic_design}
|
||||||
As demonstrated in Section \ref{ssec:detail_kinematics_cubic_dynamic}, the cubic architecture can exhibit advantageous dynamical properties when the center of mass of the moving body coincides with the cube's center, resulting in diagonal mass and stiffness matrices.
|
As demonstrated in Section \ref{ssec:detail_kinematics_cubic_dynamic}, the cubic architecture can exhibit advantageous dynamical properties when the center of mass of the moving body coincides with the cube's center, resulting in diagonal mass and stiffness matrices.
|
||||||
@ -5685,8 +5661,7 @@ Three key parameters define the geometry of the cubic Stewart platform: \(H\), t
|
|||||||
|
|
||||||
Depending on the cube's size \(H_c\) in relation to \(H\) and \(H_{CoM}\), different designs emerge.
|
Depending on the cube's size \(H_c\) in relation to \(H\) and \(H_{CoM}\), different designs emerge.
|
||||||
In the following examples, \(H = 100\,mm\) and \(H_{CoM} = 20\,mm\).
|
In the following examples, \(H = 100\,mm\) and \(H_{CoM} = 20\,mm\).
|
||||||
\begin{enumerate}
|
\paragraph{Small cube}
|
||||||
\item Small cube
|
|
||||||
|
|
||||||
When the cube size \(H_c\) is smaller than twice the height of the CoM \(H_{CoM}\) \eqref{eq:detail_kinematics_cube_small}, the resulting design is shown in Figure \ref{fig:detail_kinematics_cubic_above_small}.
|
When the cube size \(H_c\) is smaller than twice the height of the CoM \(H_{CoM}\) \eqref{eq:detail_kinematics_cube_small}, the resulting design is shown in Figure \ref{fig:detail_kinematics_cubic_above_small}.
|
||||||
|
|
||||||
@ -5720,7 +5695,7 @@ This approach yields a compact architecture, but the small cube size may result
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_cubic_above_small}Cubic architecture with cube's center above the top platform. A cube height of 40mm is used.}
|
\caption{\label{fig:detail_kinematics_cubic_above_small}Cubic architecture with cube's center above the top platform. A cube height of 40mm is used.}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Medium sized cube
|
\paragraph{Medium sized cube}
|
||||||
|
|
||||||
Increasing the cube's size such that \eqref{eq:detail_kinematics_cube_medium} is verified produces an architecture with intersecting struts (Figure \ref{fig:detail_kinematics_cubic_above_medium}).
|
Increasing the cube's size such that \eqref{eq:detail_kinematics_cube_medium} is verified produces an architecture with intersecting struts (Figure \ref{fig:detail_kinematics_cubic_above_medium}).
|
||||||
|
|
||||||
@ -5751,7 +5726,7 @@ This configuration resembles the design proposed in \cite{yang19_dynam_model_dec
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_cubic_above_medium}Cubic architecture with cube's center above the top platform. A cube height of 140mm is used.}
|
\caption{\label{fig:detail_kinematics_cubic_above_medium}Cubic architecture with cube's center above the top platform. A cube height of 140mm is used.}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Large cube
|
\paragraph{Large cube}
|
||||||
|
|
||||||
When the cube's height exceeds twice the sum of the platform height and CoM height \eqref{eq:detail_kinematics_cube_large}, the architecture shown in Figure \ref{fig:detail_kinematics_cubic_above_large} is obtained.
|
When the cube's height exceeds twice the sum of the platform height and CoM height \eqref{eq:detail_kinematics_cube_large}, the architecture shown in Figure \ref{fig:detail_kinematics_cubic_above_large} is obtained.
|
||||||
|
|
||||||
@ -5780,7 +5755,7 @@ When the cube's height exceeds twice the sum of the platform height and CoM heig
|
|||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{\label{fig:detail_kinematics_cubic_above_large}Cubic architecture with cube's center above the top platform. A cube height of 240mm is used.}
|
\caption{\label{fig:detail_kinematics_cubic_above_large}Cubic architecture with cube's center above the top platform. A cube height of 240mm is used.}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\item Platform size
|
\paragraph{Platform size}
|
||||||
|
|
||||||
For the proposed configuration, the top joints \(\bm{b}_i\) (resp. the bottom joints \(\bm{a}_i\)) and are positioned on a circle with radius \(R_{b_i}\) (resp. \(R_{a_i}\)) described by Equation \eqref{eq:detail_kinematics_cube_joints}.
|
For the proposed configuration, the top joints \(\bm{b}_i\) (resp. the bottom joints \(\bm{a}_i\)) and are positioned on a circle with radius \(R_{b_i}\) (resp. \(R_{a_i}\)) described by Equation \eqref{eq:detail_kinematics_cube_joints}.
|
||||||
|
|
||||||
@ -5793,7 +5768,6 @@ For the proposed configuration, the top joints \(\bm{b}_i\) (resp. the bottom jo
|
|||||||
|
|
||||||
Since the rotational stiffness for the cubic architecture scales with the square of the cube's height \eqref{eq:detail_kinematics_cubic_stiffness}, the cube's size can be determined based on rotational stiffness requirements.
|
Since the rotational stiffness for the cubic architecture scales with the square of the cube's height \eqref{eq:detail_kinematics_cubic_stiffness}, the cube's size can be determined based on rotational stiffness requirements.
|
||||||
Subsequently, using Equation \eqref{eq:detail_kinematics_cube_joints}, the dimensions of the top and bottom platforms can be calculated.
|
Subsequently, using Equation \eqref{eq:detail_kinematics_cube_joints}, the dimensions of the top and bottom platforms can be calculated.
|
||||||
\end{enumerate}
|
|
||||||
\subsubsection{Conclusion}
|
\subsubsection{Conclusion}
|
||||||
|
|
||||||
The analysis of the cubic architecture for Stewart platforms yielded several important findings.
|
The analysis of the cubic architecture for Stewart platforms yielded several important findings.
|
||||||
@ -6814,7 +6788,7 @@ Small Signal Bandwidth \(> 5\,kHz\) & \(6.4\,kHz\) & \(300\,Hz\) & \(30\,kHz\)
|
|||||||
Output Impedance: \(< 3.6\,\Omega\) & n/a & \(50\,\Omega\) & n/a & n/a\\
|
Output Impedance: \(< 3.6\,\Omega\) & n/a & \(50\,\Omega\) & n/a & n/a\\
|
||||||
\bottomrule
|
\bottomrule
|
||||||
\end{tabularx}
|
\end{tabularx}
|
||||||
\end{table}\footnotetext[25]{\label{org5e31d8b}The manufacturer proposed to remove the \(50\,\Omega\) output resistor to improve to small signal bandwidth above \(10\,kHz\)}
|
\end{table}\footnotetext[25]{\label{orgb6f9e1e}The manufacturer proposed to remove the \(50\,\Omega\) output resistor to improve to small signal bandwidth above \(10\,kHz\)}
|
||||||
\subsubsection{ADC and DAC}
|
\subsubsection{ADC and DAC}
|
||||||
Analog-to-digital converters and digital-to-analog converters play key roles in the system, serving as the interface between the digital RT controller and the analog physical plant.
|
Analog-to-digital converters and digital-to-analog converters play key roles in the system, serving as the interface between the digital RT controller and the analog physical plant.
|
||||||
The proper selection of these components is critical for system performance.
|
The proper selection of these components is critical for system performance.
|
||||||
@ -10560,7 +10534,7 @@ The successful validation of the NASS demonstrates that once an accurate online
|
|||||||
The system's ability to maintain precise sample positioning across a wide range of experimental conditions, combined with its robust performance and adaptive capabilities, suggests that it will significantly enhance the quality and efficiency of X-ray experiments at ID31.
|
The system's ability to maintain precise sample positioning across a wide range of experimental conditions, combined with its robust performance and adaptive capabilities, suggests that it will significantly enhance the quality and efficiency of X-ray experiments at ID31.
|
||||||
Moreover, the systematic approach to system development and validation, along with a detailed understanding of performance limitations, provides valuable insights for future improvements and potential applications in similar high-precision positioning systems.
|
Moreover, the systematic approach to system development and validation, along with a detailed understanding of performance limitations, provides valuable insights for future improvements and potential applications in similar high-precision positioning systems.
|
||||||
\section*{Experimental Validation - Conclusion}
|
\section*{Experimental Validation - Conclusion}
|
||||||
\label{sec:concept_conclusion}
|
\label{sec:test_conclusion}
|
||||||
\chapter{Conclusion and Future Work}
|
\chapter{Conclusion and Future Work}
|
||||||
\label{chap:conclusion}
|
\label{chap:conclusion}
|
||||||
\section{Alternative Architecture}
|
\section{Alternative Architecture}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user