diff --git a/simscape-nano-hexapod.bib b/simscape-nano-hexapod.bib index e69de29..0964ca7 100644 --- a/simscape-nano-hexapod.bib +++ b/simscape-nano-hexapod.bib @@ -0,0 +1,54 @@ +@book{taghirad13_paral, + author = {Taghirad, Hamid}, + title = {Parallel robots : mechanics and control}, + year = 2013, + publisher = {CRC Press}, + address = {Boca Raton, FL}, + isbn = 9781466555778, + keywords = {favorite, parallel robot}, +} + + + +@article{preumont07_six_axis_singl_stage_activ, + author = {A. Preumont and M. Horodinca and I. Romanescu and B. de + Marneffe and M. Avraam and A. Deraemaeker and F. Bossens and + A. Abu Hanieh}, + title = {A Six-Axis Single-Stage Active Vibration Isolator Based on + Stewart Platform}, + journal = {Journal of Sound and Vibration}, + volume = 300, + number = {3-5}, + pages = {644-661}, + year = 2007, + doi = {10.1016/j.jsv.2006.07.050}, + url = {https://doi.org/10.1016/j.jsv.2006.07.050}, + keywords = {parallel robot}, +} + + + +@book{skogestad07_multiv_feedb_contr, + author = {Skogestad, Sigurd and Postlethwaite, Ian}, + title = {Multivariable Feedback Control: Analysis and Design - + Second Edition}, + year = 2007, + publisher = {John Wiley}, + isbn = 978-0470011683, + keywords = {favorite}, +} + + + +@article{preumont08_trans_zeros_struc_contr_with, + author = {Preumont, Andr{\'e} and De Marneffe, Bruno and Krenk, + Steen}, + title = {Transmission Zeros in Structural Control With Collocated + Multi-Input/multi-Output Pairs}, + journal = {Journal of guidance, control, and dynamics}, + volume = 31, + number = 2, + pages = {428--432}, + year = 2008, +} + diff --git a/simscape-nano-hexapod.org b/simscape-nano-hexapod.org index c1fef26..c46e37d 100644 --- a/simscape-nano-hexapod.org +++ b/simscape-nano-hexapod.org @@ -365,16 +365,16 @@ Make well defined notations. ** Kinematic Analysis <> -*** Inverse Kinematics +**** Inverse Kinematics -*** Forward Kinematics +**** Forward Kinematics -*** Jacobian Matrix +**** Jacobian Matrix - Velocity Loop Closure - Static Forces -*** Singularities +**** Singularities - Briefly mention singularities, and say that for small stroke, it is not an issue, the Jacobian matrix may be considered constant diff --git a/simscape-nano-hexapod.pdf b/simscape-nano-hexapod.pdf index 31bc4f9..ac0a965 100644 Binary files a/simscape-nano-hexapod.pdf and b/simscape-nano-hexapod.pdf differ diff --git a/simscape-nano-hexapod.tex b/simscape-nano-hexapod.tex index c76c7c3..ef4efdb 100644 --- a/simscape-nano-hexapod.tex +++ b/simscape-nano-hexapod.tex @@ -1,8 +1,9 @@ -% Created 2024-03-19 Tue 11:06 +% Created 2025-02-05 Wed 17:49 % Intended LaTeX compiler: pdflatex \documentclass[a4paper, 10pt, DIV=12, parskip=full, bibliography=totoc]{scrreprt} \input{preamble.tex} +\input{preamble_extra.tex} \bibliography{simscape-nano-hexapod.bib} \author{Dehaeze Thomas} \date{\today} @@ -12,7 +13,7 @@ pdftitle={Simscape Model - Nano Hexapod}, pdfkeywords={}, pdfsubject={}, - pdfcreator={Emacs 29.2 (Org mode 9.7)}, + pdfcreator={Emacs 29.4 (Org mode 9.6)}, pdflang={English}} \usepackage{biblatex} @@ -22,27 +23,311 @@ \tableofcontents \clearpage -Goal of this report is: + + +Introduction: \begin{itemize} -\item show what is an hexapod, how we can define its geometry, stiffness, etc\ldots{} -\item Some kinematics: stiffness matrix, mass matrix, etc\ldots{} -\item talk about cubic architecture? +\item Choice of architecture to do 5DoF control (Section \ref{sec:nhexa_platform_review}) +\item Stewart platform (Section \ref{sec:nhexa_stewart_platform}) +Show what is an hexapod, how we can define its geometry, stiffness, etc\ldots{} +Some kinematics: stiffness matrix, mass matrix, etc\ldots{} +\item Need to model the active vibration platform: multi-body model (Section \ref{sec:nhexa_model}) +Explain what we want to capture with this model +Key elements (plates, joints, struts): for now simplistic model (rigid body elements, perfect joints, \ldots{}), but in next section, FEM will be used +\item Control (Section \ref{sec:nhexa_control}) +\end{itemize} + +\chapter{Active Vibration Platforms} +\label{sec:nhexa_platform_review} +\textbf{Goals}: +\begin{itemize} +\item Explain why Stewart platform architecture is chosen +\item Explain what is a Stewart platform (quickly as it will be shown in details in the next section) +\item Quick review of active vibration platforms (5 or 6DoF) +\end{itemize} + +Active vibration platform with 5DoF or 6DoF? +Synchrotron applications? + + +\begin{itemize} +\item Literature review? (\textbf{maybe more suited for chapter 2}) +\begin{itemize} +\item \url{file:///home/thomas/Cloud/work-projects/ID31-NASS/matlab/stewart-simscape/org/bibliography.org} +\item Talk about flexible joint? Maybe not so much as it should be topic of second chapter. +Just say that we must of flexible joints that can be defined as 3 to 6DoF joints, and it will be optimize in chapter 2. +\end{itemize} +\item \cite{taghirad13_paral} +\item For some systems, just XYZ control (stack stages), example: holler +\item For other systems, Stewart platform (ID16a), piezo based +\item Examples of Stewart platforms for general vibration control, some with Piezo, other with Voice coil. IFF, \ldots{} +Show different geometry configuration +\item DCM: tripod? +\end{itemize} +\section{Active vibration control of sample stages} + +\href{file:///home/thomas/Cloud/work-projects/ID31-NASS/phd-thesis-chapters/A0-nass-introduction/nass-introduction.org}{Review of stages with online metrology for Synchrotrons} + +\begin{itemize} +\item[{$\square$}] Talk about external metrology? +\item[{$\square$}] Talk about control architecture? +\item[{$\square$}] Comparison with the micro-station / NASS +\end{itemize} + +\section{Serial and Parallel Manipulators} + +\textbf{Goal}: +\begin{itemize} +\item Explain why a parallel manipulator is here preferred +\item Compact, 6DoF, higher control bandwidth, linear, simpler + +\item Show some example of serial and parallel manipulators + +\item A review of Stewart platform will be given in Chapter related to the detailed design of the Nano-Hexapod +\end{itemize} + +\chapter{The Stewart platform} +\label{sec:nhexa_stewart_platform} +\begin{itemize} +\item Some history about Stewart platforms +\item What is so special and why it is so used in different fields: give examples +Explain advantages compared to serial architecture +\item Little review (very quick: two extreme sizes, piezo + voice coil) +Complete review of Stewart platforms will be made in Chapter 2 +\item Presentation of tools used to analyze the properties of the Stewart platform => useful for design and control +\end{itemize} +\section{Mechanical Architecture} +\label{ssec:nhexa_stewart_platform_architecture} + +\url{file:///home/thomas/Cloud/work-projects/ID31-NASS/matlab/stewart-simscape/org/stewart-architecture.org} + +Presentation of the typical architecture +\begin{itemize} +\item Explain the different frames, etc\ldots{} +\item explain key elements: +\begin{itemize} +\item two plates +\item joints +\item actuators +\end{itemize} +\end{itemize} + +Make well defined notations. +\begin{itemize} +\item \{F\}, \{M\} +\item si, li, ai, bi, etc. + +\item[{$\square$}] Make figure with defined frames, joints, etc\ldots{} +Maybe can use this figure as an example: +\begin{center} +\includesvg[scale=1]{/home/thomas/Cloud/work-projects/ID31-NASS/phd-thesis-chapters/A0-nass-introduction/figs/introduction_stewart_du14} +\end{center} +\end{itemize} + +\section{Kinematic Analysis} +\label{ssec:nhexa_stewart_platform_kinematics} +\paragraph{Inverse Kinematics} + +\paragraph{Forward Kinematics} + +\paragraph{Jacobian Matrix} + +\begin{itemize} +\item Velocity Loop Closure +\item Static Forces +\end{itemize} + +\paragraph{Singularities} + +\begin{itemize} +\item Briefly mention singularities, and say that for small stroke, it is not an issue, the Jacobian matrix may be considered constant +\end{itemize} + +\section{Static Analysis} +\label{ssec:nhexa_stewart_platform_static} + +How stiffness varies with orientation of struts. +Same with stroke? +Or maybe in the detailed chapter? + +\section{Dynamic Analysis} +\label{ssec:nhexa_stewart_platform_dynamics} + +Very complex => multi-body model +For instance, compute the plant for massless struts and perfect joints (will be compared with Simscape model). +But say that if we want to model more complex cases, it becomes impractical (cite papers). + +\section*{Conclusion} +All depends on the geometry. +Reasonable choice of geometry is made in chapter 1. +Optimization of the geometry will be made in chapter 2. + +\chapter{Multi-Body Model} +\label{sec:nhexa_model} +\textbf{Goal}: +\begin{itemize} +\item Study the dynamics of Stewart platform +\item Instead of working with complex analytical models: a multi-body model is used. +Complex because has to model the inertia of the struts. +Cite papers that tries to model the stewart platform analytically +Advantage: it will be easily included in the model of the NASS + +\item Mention the Toolbox (maybe make a DOI for that) + +\item[{$\square$}] Have a table somewhere that summarizes the main characteristics of the nano-hexapod model +\begin{itemize} +\item location of joints +\item size / mass of platforms, etc\ldots{} +\end{itemize} +\end{itemize} +\section{Model Definition} +\label{ssec:nhexa_model_def} + +\begin{itemize} +\item[{$\square$}] Make a schematic of the definition process (for instance knowing the ai, bi points + \{A\} and \{B\} allows to compute Jacobian, etc\ldots{}) + +\item What is important for the model: +\begin{itemize} +\item Inertia of plates and struts +\item Positions of joints / Orientation of struts +\item Definition of frames (for Jacobian, stiffness analysis, etc\ldots{}) +\end{itemize} +\end{itemize} + +Then, several things can be computed: +\begin{itemize} +\item Kinematics, stiffness, platform mobility, dynamics, etc\ldots{} +\end{itemize} + + +\begin{itemize} +\item Joints: can be 2dof to 6dof +\item Actuators: can be modelled as wanted +\end{itemize} + +\section{Nano Hexapod} +\label{ssec:nhexa_model_nano_hexapod} + +Start simple: +\begin{itemize} +\item Perfect joints, massless actuators +\end{itemize} + +Joints: perfect 2dof/3dof (+ mass-less) +Actuators: APA + Encoder (mass-less) +\begin{itemize} +\item k = 1N/um +\item Force sensor +\end{itemize} + +Definition of each part + Plant with defined inputs/outputs (force sensor, relative displacement sensor, etc\ldots{}) + +\section{Model Dynamics} +\label{ssec:nhexa_model_dynamics} + +\begin{itemize} +\item If all is perfect (mass-less struts, perfect joints, etc\ldots{}), maybe compare analytical model with simscape model? +\item Say something about the model order +Model order is 12, and that we can compute modes from matrices M and K, compare with the Simscape model +\item Compare with analytical formulas (see number of states) +\end{itemize} + +\section*{Conclusion} +\begin{itemize} +\item Validation of multi-body model in a simple case +\item Possible to increase the model complexity when required +\begin{itemize} +\item If considered 6dof joint stiffness, model order increases +\item Can have an effect on IFF performances: \cite{preumont07_six_axis_singl_stage_activ} +\item Conclusion: during the conceptual design, we consider a perfect, but will be taken into account later +\item Optimization of the Flexible joint will be performed in Chapter 2.2 +\end{itemize} +\item MIMO system: how to control? => next section +\end{itemize} + +\chapter{Control of Stewart Platforms} +\label{sec:nhexa_control} +MIMO control: much more complex than SISO control because of interaction. +Possible to ignore interaction when good decoupling is achieved. +Important to have tools to study interaction +Different ways to try to decouple a MIMO plant. + +Reference book: \cite{skogestad07_multiv_feedb_contr} +\section{Centralized and Decentralized Control} +\label{ssec:nhexa_control_centralized_decentralized} + +\begin{itemize} +\item Explain what is centralized and decentralized: +\begin{itemize} +\item linked to the sensor position relative to the actuators +\item linked to the fact that sensors and actuators pairs are ``independent'' or each other (related to the control architecture, not because there is no coupling) +\end{itemize} +\item When can decentralized control be used and when centralized control is necessary? +Study of interaction: RGA +\end{itemize} + +\section{Choice of the control space} +\label{ssec:nhexa_control_space} + +\begin{itemize} +\item[{$\square$}] \url{file:///home/thomas/Cloud/research/matlab/decoupling-strategies/svd-control.org} + +\item Jacobian matrices, CoK, CoM, control in the frame of the struts, SVD, Modal, \ldots{} +\item Combined CoM and CoK => Discussion of cubic architecture ? (quick, as it is going to be in detailed in chapter 2) +\item Explain also the link with the setpoint: it is interesting to have the controller in the frame of the performance variables +Also speak about disturbances? (and how disturbances can be mixed to different outputs due to control and interaction) +\item Table that summarizes the trade-off for each strategy +\item Say that in this study, we will do the control in the frame of the struts for simplicity (even though control in the cartesian frame was also tested) +\end{itemize} + +\section{Active Damping with Decentralized IFF} +\label{ssec:nhexa_control_iff} + +Guaranteed stability: \cite{preumont08_trans_zeros_struc_contr_with} +\begin{itemize} +\item[{$\square$}] I think there is another paper about that +\end{itemize} + +For decentralized control: ``MIMO root locus'' can be used to estimate the damping / optimal gain +Poles and converging towards \emph{transmission zeros} + +How to optimize the added damping to all modes? +\begin{itemize} +\item[{$\square$}] Add some papers citations +\end{itemize} + +Compute: +\begin{itemize} +\item[{$\square$}] Plant dynamics +\item[{$\square$}] Root Locus +\end{itemize} + +\section{MIMO High-Authority Control - Low-Authority Control} +\label{ssec:nhexa_control_hac_lac} + +Compute: +\begin{itemize} +\item[{$\square$}] compare open-loop and damped plant (outputs are the encoders) +\item[{$\square$}] Implement decentralized control? +\item[{$\square$}] Check stability: +\begin{itemize} +\item Characteristic Loci: Eigenvalues of \(G(j\omega)\) plotted in the complex plane +\item Generalized Nyquist Criterion: If \(G(s)\) has \(p_0\) unstable poles, then the closed-loop system with return ratio \(kG(s)\) is stable if and only if the characteristic loci of \(kG(s)\), taken together, encircle the point \(-1\), \(p_0\) times anti-clockwise, assuming there are no hidden modes +\end{itemize} +\item[{$\square$}] Show some performance metric? For instance compliance? +\end{itemize} + +\section*{Conclusion} + + +\chapter*{Conclusion} +\label{sec:nhexa_conclusion} + +\begin{itemize} +\item Configurable Stewart platform model +\item Will be included in the multi-body model of the micro-station => nass multi body model +\item Control: complex problem, try to use simplest architecture \end{itemize} -\begin{table}[htbp] -\caption{\label{tab:simscape_nhexapod_section_matlab_code}Report sections and corresponding Matlab files} -\centering -\begin{tabularx}{0.6\linewidth}{lX} -\toprule -\textbf{Sections} & \textbf{Matlab File}\\ -\midrule -Section \ref{sec}: & \texttt{simscape\_nhexapod\_1\_.m}\\ -\bottomrule -\end{tabularx} -\end{table} -\chapter{Nano-Hexapod Kinematics} -\label{sec:simscape_nhexapod_kinematics} -\chapter{Conclusion} -\label{sec:simscape_nhexapod_conclusion} \printbibliography[heading=bibintoc,title={Bibliography}] \end{document}