Work on IFF and HAC-IFF sections

This commit is contained in:
Thomas Dehaeze 2024-11-15 18:15:13 +01:00
parent f99fb6df20
commit 91b5d3edac
68 changed files with 3861 additions and 785 deletions

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 125 KiB

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 139 KiB

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -1,4 +1,4 @@
% Created 2024-11-13 Wed 17:06
% Created 2024-11-15 Fri 18:12
% Intended LaTeX compiler: pdflatex
\documentclass[a4paper, 10pt, DIV=12, parskip=full, bibliography=totoc]{scrreprt}
@ -35,7 +35,7 @@ The identify dynamics of the nano-hexapod fixed on top of the micro-station was
Decentralized Integral Force Feedback is then applied to actively damp the plant in a robust way (Section \ref{sec:test_id31_iff}).
High authority control is then applied
High authority control is then applied (Section \ref{sec:test_id31_iff_hac}).
\begin{figure}[htbp]
\begin{subfigure}{0.49\textwidth}
@ -54,7 +54,6 @@ High authority control is then applied
\end{figure}
\chapter{Short Stroke Metrology System}
\label{sec:org598c753}
\label{sec:test_id31_metrology}
The control of the nano-hexapod requires an external metrology system measuring the relative position of the nano-hexapod top platform with respect to the granite.
As the long-stroke (\(\approx 1 \,cm^3\)) metrology system was not developed yet, a stroke stroke (\(> 100\,\mu m^3\)) was used instead to validate the nano-hexapod control.
@ -92,7 +91,6 @@ This way, the gap between the sensor and the reference sphere is much larger (he
Nevertheless, the metrology system still has limited measurement range, as when the spheres are moving perpendicularly to the beam axis, the reflected light does not coincide with the incident light, and for some perpendicular displacement, the interference is too small to be detected.
\section{Metrology Kinematics}
\label{sec:org1981747}
\label{ssec:test_id31_metrology_kinematics}
The developed short-stroke metrology system is schematically shown in Figure \ref{fig:test_id31_metrology_kinematics}.
@ -135,7 +133,6 @@ The five equations \eqref{eq:test_id31_metrology_kinematics} can be written in a
\end{equation}
\section{Rough alignment of the reference spheres}
\label{sec:orgd2560a6}
\label{ssec:test_id31_metrology_sphere_rought_alignment}
The two reference spheres are aligned with the rotation axis of the spindle.
@ -150,7 +147,6 @@ This is probably limited due to the poor coaxiality between the cylinders and th
However, the alignment precision should be enough to stay in the acceptance of the interferometers.
\section{Tip-Tilt adjustment of the interferometers}
\label{sec:orgb663f66}
\label{ssec:test_id31_metrology_alignment}
The short stroke metrology system is placed on top of the main granite using a gantry made of granite blocs to have good vibration and thermal stability (Figure \ref{fig:short_stroke_metrology_overview}).
@ -169,7 +165,6 @@ This is equivalent as to optimize the perpendicularity between the interferomete
The lateral sensor heads (i.e. all except the top one), which are each fixed to a custom tip-tilt adjustment mechanism, are individually oriented such that the coupling efficient is maximized.
\section{Fine Alignment of reference spheres using interferometers}
\label{sec:orgde2bc57}
\label{ssec:test_id31_metrology_sphere_fine_alignment}
Thanks to the good alignment of the two reference spheres with the spindle axis and to the fine adjustment of the interferometers orientations, the interferometer measurement is made possible during complete spindle rotation.
@ -201,7 +196,6 @@ Remaining error after alignment is in the order of \(\pm5\,\mu\text{rad}\) for a
\section{Estimated measurement volume}
\label{sec:org88488f3}
\label{ssec:test_id31_metrology_acceptance}
Because the interferometers are pointing to spheres and not flat surfaces, the lateral acceptance is limited.
@ -228,7 +222,6 @@ The obtained lateral acceptance for pure displacements in any direction is estim
\section{Estimated measurement errors}
\label{sec:org9791179}
\label{ssec:test_id31_metrology_errors}
When using the NASS, the accuracy of the sample's positioning is linked to the accuracy of the external metrology.
@ -268,10 +261,27 @@ The effect of the noise on the translation and rotation measurements is estimate
\end{figure}
\chapter{Identified Open Loop Plant}
\label{sec:org7b9ff96}
\label{sec:test_id31_open_loop_plant}
\begin{itemize}
\item Force sensors: \(\bm{V}_s = [V_{s1},\ V_{s2},\ V_{s3},\ V_{s4},\ V_{s5},\ V_{s6}]\)
\item Encoders: \(\bm{d}_e = [d_{e1},\ d_{e2},\ d_{e3},\ d_{e4},\ d_{e5},\ d_{e6}]\)
\item Interferometers: \(\bm{d} = [d_{1},\ d_{2},\ d_{3},\ d_{4},\ d_{5}]\)
\item Command signal: \(\bm{u} = [u_1,\ u_2,\ u_3,\ u_4,\ u_5,\ u_6]\)
\item Voltage across the piezoelectric stack actuator: \(\bm{V}_a = [V_{a1},\ V_{a2},\ V_{a3},\ V_{a4},\ V_{a5},\ V_{a6}]\)
\item Motion of the sample measured by external metrology: \(\bm{y}_\mathcal{X} = [D_x,\,D_y,\,D_z,\,R_x,\,R_y,\,R_z]\)
\item Error of the sample measured by external metrology: \(\bm{\epsilon\mathcal{X}} = [\epsilon_{D_x},\,\epsilon_{D_y},\,\epsilon_{D_z},\,\epsilon_{R_x},\,\epsilon_{R_y},\,\epsilon_{R_z}]\)
\item Error of the struts measured by external metrology: \(\bm{\epsilon\mathcal{L}} = [\epsilon_{\mathcal{L}_1},\,\epsilon_{\mathcal{L}_2},\,\epsilon_{\mathcal{L}_3},\,\epsilon_{\mathcal{L}_4},\,\epsilon_{\mathcal{L}_5},\,\epsilon_{\mathcal{L}_6}]\)
\item Spindle angle setpoint (or encoder): \(r_{R_z}\)
\item Translation stage setpoint: \(r_{D_y}\)
\item Tilt stage setpoint: \(r_{R_y}\)
\end{itemize}
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/test_id31_block_schematic_plant.png}
\caption{\label{fig:test_id31_block_schematic_plant}Schematic of the}
\end{figure}
\section{First Open-Loop Plant Identification}
\label{sec:orgd1bd080}
\label{ssec:test_id31_open_loop_plant_first_id}
The plant dynamics is first identified for a fixed spindle angle (at \(0\,\text{deg}\)) and without any payload.
@ -279,7 +289,11 @@ The model dynamics is also identified in the same conditions.
A first comparison between the model and the measured dynamics is done in Figure \ref{fig:test_id31_first_id}.
A good match can be observed for the diagonal dynamics (except the high frequency modes which are not modeled).
However, the coupling for the transfer function from command signals \(\mathbf{u}\) to estimated strut motion from the external metrology \(e\mathbf{\mathcal{L}}\) is larger than expected (Figure \ref{fig:test_id31_first_id_int}).
However, the coupling for the transfer function from command signals \(\bm{u}\) to estimated strut motion from the external metrology \(e\bm{\mathcal{L}}\) is larger than expected (Figure \ref{fig:test_id31_first_id_int}).
The experimental time delay estimated from the FRF (Figure \ref{fig:test_id31_first_id_int}) is larger than expected.
After investigation, it was found that the additional delay was due to digital processing unit\footnote{The ``PEPU'' \cite{hino18_posit_encod_proces_unit} was used for digital protocol conversion between the interferometers and the Speedgoat} that was used to read the interferometers in the Speedgoat.
This issue was later solved.
\begin{figure}[htbp]
\begin{subfigure}{0.49\textwidth}
@ -298,7 +312,6 @@ However, the coupling for the transfer function from command signals \(\mathbf{u
\end{figure}
\section{Better Angular Alignment}
\label{sec:org205ba5e}
\label{ssec:test_id31_open_loop_plant_rz_alignment}
One possible explanation of the increased coupling observed in Figure \ref{fig:test_id31_first_id_int} is the poor alignment between the external metrology axes (i.e. the interferometer supports) and the nano-hexapod axes.
@ -327,11 +340,11 @@ Results shown in Figure \ref{fig:test_id31_Rz_align_correct} are indeed indicati
\end{figure}
\section{Open-Loop Identification after alignment}
\label{sec:orgcb4c885}
\label{ssec:test_id31_open_loop_plant_after_alignment}
The plant dynamics is identified after the fine alignment and is compared with the model dynamics in Figure \ref{fig:test_id31_first_id_int_better_rz_align}.
Compared to the initial identification shown in Figure \ref{fig:test_id31_first_id_int}, the obtained coupling has decreased and is close to the coupling obtained with the multi-body model.
Compared to the initial identification shown in Figure \ref{fig:test_id31_first_id_int}, the obtained coupling has decreased and is now close to the coupling obtained with the multi-body model.
At low frequency (below \(10\,\text{Hz}\)) all the off-diagonal elements have an amplitude \(\approx 100\) times lower compared to the diagonal elements, indicating that a low bandwidth feedback controller can be implemented in a decentralized way (i.e. \(6\) SISO controllers).
\begin{figure}[htbp]
\centering
@ -340,12 +353,13 @@ Compared to the initial identification shown in Figure \ref{fig:test_id31_first_
\end{figure}
\section{Effect of Payload Mass}
\label{sec:org497746b}
\label{ssec:test_id31_open_loop_plant_mass}
The system dynamics was identified with four payload conditions that are shown in Figure \ref{fig:test_id31_picture_masses}.
The obtained direct terms are compared with the model dynamics in Figure \ref{fig:test_nhexa_comp_simscape_diag_masses}.
It is interesting to note that the anti-resonances in the force sensor plant are now appearing as minimum-phase, as the model predicts (Figure \ref{fig:test_id31_comp_simscape_iff_diag_masses}).
\begin{figure}[htbp]
\begin{subfigure}{0.24\textwidth}
\begin{center}
@ -379,7 +393,7 @@ The obtained direct terms are compared with the model dynamics in Figure \ref{fi
\begin{center}
\includegraphics[scale=1,width=0.95\linewidth]{figs/test_id31_comp_simscape_int_diag_masses.png}
\end{center}
\subcaption{\label{fig:test_id31_comp_simscape_int_diag_masses}from $u$ to $d_e$}
\subcaption{\label{fig:test_id31_comp_simscape_int_diag_masses}from $u$ to $e\mathcal{L}$}
\end{subfigure}
\begin{subfigure}{0.49\textwidth}
\begin{center}
@ -390,8 +404,7 @@ The obtained direct terms are compared with the model dynamics in Figure \ref{fi
\caption{\label{fig:test_nhexa_comp_simscape_diag_masses}Comparison of the diagonal elements (i.e. ``direct'' terms) of the measured FRF matrix and the dynamics identified from the Simscape model. Both for the dynamics from \(u\) to \(e\mathcal{L}\) (\subref{fig:test_id31_comp_simscape_int_diag_masses}) and from \(u\) to \(V_s\) (\subref{fig:test_id31_comp_simscape_iff_diag_masses})}
\end{figure}
\section{Effect of Rotation}
\label{sec:orgff15d08}
\section{Effect of Spindle Rotation}
\label{ssec:test_id31_open_loop_plant_rotation}
The dynamics was then identified while the Spindle was rotating at constant velocity.
@ -419,12 +432,337 @@ This also indicates that the metrology kinematics is correct and is working in r
\caption{\label{fig:test_id31_effect_rotation}Effect of the spindle rotation on the plant dynamics from \(u\) to \(e\mathcal{L}\). Three rotational velocities are tested (\(0\,\text{deg}/s\), \(36\,\text{deg}/s\) and \(180\,\text{deg}/s\)). Both direct terms (\subref{fig:test_id31_effect_rotation_direct}) and coupling terms (\subref{fig:test_id31_effect_rotation_coupling}) are displayed.}
\end{figure}
\section{Conclusion}
\label{sec:orgd703c88}
\section{Identification of Spurious modes}
\begin{itemize}
\item Good match between the model and experiment
\item[{$\square$}] These are made to identify the modes of the spheres
\item[{$\square$}] Also discuss other observed modes
\end{itemize}
\section*{Conclusion}
Thanks to the model, poor alignment between the nano-hexapod axes and the external metrology axes could be identified.
After alignment, the identified dynamics is well matching with the multi-body model.
Also, the observed effects of the payload mass and of the spindle rotation on the dynamics are well matching the model predictions.
\chapter{Decentralized Integral Force Feedback}
\label{sec:test_id31_iff}
Before implementing a position controller, an active damping controller was first implemented as shown in Figure \ref{fig:test_id31_iff_block_diagram}.
It consisted of a decentralized Integral Force Feedback controller \(\bm{K}_{\text{IFF}}\), with all the diagonal terms being equal \eqref{eq:test_id31_Kiff}.
\begin{equation}\label{eq:test_id31_iff_diagonal}
\bm{K}_{\text{IFF}} = K_{\text{IFF}} \cdot \bm{I}_6 = \begin{bmatrix}
K_{\text{IFF}} & & 0 \\
& \ddots & \\
0 & & K_{\text{IFF}}
\end{bmatrix}
\end{equation}
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/test_id31_iff_schematic.png}
\caption{\label{fig:test_id31_iff_block_diagram}Block diagram of the implemented decentralized IFF controller. The controller \(\bm{K}_{\text{IFF}}\) is a diagonal controller with the same elements on every diagonal term \(K_{\text{IFF}}\).}
\end{figure}
\section{IFF Plant}
\label{ssec:test_id31_iff_plant}
As the multi-body model is going to be used to estimate the stability of the IFF controller and to optimize achievable damping, it is first checked is this model accurately represents the system dynamics.
In Figure \ref{fig:test_id31_comp_simscape_iff_diag_masses}, it was shown that the model well captures the dynamics from each actuator to its collocated force sensor, as that for all considered payloads.
The model is also accurate for the dynamics from an actuator to the force sensors in the other struts (i.e. the off-diagonal dynamics) as shown in Figure \ref{fig:test_id31_comp_simscape_Vs}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/test_id31_comp_simscape_Vs.png}
\caption{\label{fig:test_id31_comp_simscape_Vs}Comparison of the measured (in blue) and modeled (in red) frequency transfer functions from the first control signal \(u_1\) to the six force sensor voltages \(V_{s1}\) to \(V_{s6}\)}
\end{figure}
\section{IFF Controller}
\label{ssec:test_id31_iff_controller}
A decentralized IFF controller is there designed such that it adds damping to the suspension modes of the nano-hexapod for all considered payloads.
The frequency of the suspension modes are ranging from \(\approx 30\,\text{Hz}\) to \(\approx 250\,\text{Hz}\) (Figure \ref{fig:test_id31_comp_simscape_iff_diag_masses}), and therefore the IFF controller should provide integral action in this frequency range.
A second order high pass filter (cut-off frequency of \(10\,\text{Hz}\)) is added to limit the low frequency gain.
The bode plot of the decentralized IFF controller is shown in Figure \ref{fig:test_id31_Kiff_bode_plot} and the ``decentralized loop-gains'' for all considered payload masses are shown in Figure \ref{fig:test_id31_Kiff_loop_gain}.
It can be seen that the loop-gain is larger than \(1\) around suspension modes indicating that some damping should be added to the suspension modes.
\begin{equation}\label{eq:test_id31_Kiff}
K_{\text{IFF}} = g_0 \cdot \underbrace{\frac{1}{s}}_{\text{int}} \cdot \underbrace{\frac{s^2/\omega_z^2}{s^2/\omega_z^2 + 2\xi_z s /\omega_z + 1}}_{\text{2nd order LPF}},\quad \left(g_0 = -100,\ \omega_z = 2\pi10\,\text{rad/s},\ \xi_z = 0.7\right)
\end{equation}
\begin{figure}[htbp]
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.95\linewidth]{figs/test_id31_Kiff_bode_plot.png}
\end{center}
\subcaption{\label{fig:test_id31_Kiff_bode_plot}Bode plot of $K_{\text{IFF}}$}
\end{subfigure}
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.95\linewidth]{figs/test_id31_Kiff_loop_gain.png}
\end{center}
\subcaption{\label{fig:test_id31_Kiff_loop_gain}Decentralized Loop gains}
\end{subfigure}
\caption{\label{fig:test_id31_Kiff}Bode plot of the decentralized IFF controller (\subref{fig:test_id31_Kiff_bode_plot}). The decentralized controller \(K_{\text{IFF}}\) multiplied by the identified dynamics from \(u_1\) to \(V_{s1}\) for all payloads are shown in (\subref{fig:test_id31_Kiff_loop_gain})}
\end{figure}
To estimate the added damping, a root-locus plot is computed using the multi-body model (Figure \ref{fig:test_id31_iff_root_locus_m0}).
It can be seen that for all considered payloads, the poles are bounded to the ``left-half plane'' indicating that the decentralized IFF is robust.
The closed-loop poles for the chosen value of the gain are displayed by black crosses.
It can be seen that while damping can be added for all payloads (as compared to the open-loop case), the optimal value of the gain could be tuned separately for each payload.
For instance, for low payload masses, a higher value of the IFF controller gain could lead to better damping.
However, in this study, it was chosen to implement a fix (i.e. non-adaptive) decentralized IFF controller.
\begin{figure}[htbp]
\begin{subfigure}{0.24\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.9\linewidth]{figs/test_id31_iff_root_locus_m0.png}
\end{center}
\subcaption{\label{fig:test_id31_iff_root_locus_m0}$m = 0\,\text{kg}$}
\end{subfigure}
\begin{subfigure}{0.24\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.9\linewidth]{figs/test_id31_iff_root_locus_m1.png}
\end{center}
\subcaption{\label{fig:test_id31_iff_root_locus_m1}$m = 13\,\text{kg}$}
\end{subfigure}
\begin{subfigure}{0.24\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.9\linewidth]{figs/test_id31_iff_root_locus_m2.png}
\end{center}
\subcaption{\label{fig:test_id31_iff_root_locus_m2}$m = 26\,\text{kg}$}
\end{subfigure}
\begin{subfigure}{0.24\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.9\linewidth]{figs/test_id31_iff_root_locus_m3.png}
\end{center}
\subcaption{\label{fig:test_id31_iff_root_locus_m3}$m = 39\,\text{kg}$}
\end{subfigure}
\caption{\label{fig:test_id31_iff_root_locus_m0}Root Locus plots for the designed decentralized IFF controller and using the multy-body model. Black crosses indicate the closed-loop poles for the choosen value of the gain.}
\end{figure}
\section{Estimated Damped Plant}
\label{ssec:test_id31_iff_perf}
As the model is accurately modelling the system dynamics, it can be used to estimate the damped plant, i.e. the transfer functions from \(\bm{u}^\prime\) to \(\bm{\mathcal{L}}\).
The obtained damped plants are compared with the open-loop plants in Figure \ref{fig:test_id31_comp_ol_iff_plant_model}.
The peak amplitudes corresponding to the suspension modes are approximately reduced by a factor \(10\) for all considered payloads, and with the same decentralized IFF controller.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/test_id31_comp_ol_iff_plant_model.png}
\caption{\label{fig:test_id31_comp_ol_iff_plant_model}Comparison of the open-loop plants and the estimated damped plant with Decentralized IFF.}
\end{figure}
\section*{Conclusion}
\chapter{High Authority Control in the frame of the struts}
\label{sec:test_id31_iff_hac}
The position of the sample is actively stabilized by implementing a High-Authority-Controller as shown in Figure \ref{fig:test_id31_iff_hac_schematic}.
\begin{equation}\label{eq:eq:test_id31_hac_diagonal}
\bm{K}_{\text{HAC}} = K_{\text{HAC}} \cdot \bm{I}_6 = \begin{bmatrix}
K_{\text{HAC}} & & 0 \\
& \ddots & \\
0 & & K_{\text{HAC}}
\end{bmatrix}
\end{equation}
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/test_id31_iff_hac_schematic.png}
\caption{\label{fig:test_id31_iff_hac_schematic}Block diagram of the implemented HAC-IFF controllers. The controller \(\bm{K}_{\text{HAC}}\) is a diagonal controller with the same elements on every diagonal term \(K_{\text{HAC}}\).}
\end{figure}
\section{Damped Plant}
\label{ssec:test_id31_iff_hac_plant}
The damped plants (i.e. the transfer function from \(\bm{u}^\prime\) to \(\bm{\epsilon\mathcal{L}}\)) were identified for all payload conditions.
To verify if the model accurately represents the damped plants, both direct terms and coupling terms corresponding to the first actuator are compared in Figure \ref{fig:test_id31_comp_simscape_hac}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/test_id31_comp_simscape_hac.png}
\caption{\label{fig:test_id31_comp_simscape_hac}Comparison of the measured (in blue) and modeled (in red) frequency transfer functions from the first control signal (\(u_1^\prime\)) of the damped plant to the estimated errors (\(\epsilon_{\mathcal{L}_i}\)) in the frame of the six struts by the external metrology}
\end{figure}
The six direct terms for all four payload conditions are compared with the model in Figure \ref{fig:test_id31_hac_plant_effect_mass}.
It is shown that the model accurately represents the dynamics for all payloads.
In Section \ref{sec:test_id31_iff_hac}, a High Authority Controller is tuned to be robust to the change of dynamics due to different payloads used.
Without decentralized IFF being applied, the controller would have had to be robust to all the undamped dynamics shown in Figure \ref{fig:test_id31_comp_all_undamped_damped_plants}, which is a very complex control problem.
With the applied decentralized IFF, the HAC instead had to be be robust to all the damped dynamics shown in Figure \ref{fig:test_id31_comp_all_undamped_damped_plants}, which is easier from a control perspective.
This is one of the key benefit of using the HAC-LAC strategy.
\begin{figure}[htbp]
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.95\linewidth]{figs/test_id31_hac_plant_effect_mass.png}
\end{center}
\subcaption{\label{fig:test_id31_hac_plant_effect_mass}Effect of payload mass on $\epsilon\mathcal{L}_i/u_i^\prime$}
\end{subfigure}
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.95\linewidth]{figs/test_id31_comp_all_undamped_damped_plants.png}
\end{center}
\subcaption{\label{fig:test_id31_comp_all_undamped_damped_plants}Undamped and damped plants}
\end{subfigure}
\caption{\label{fig:test_id31_hac_plant_effect_mass_comp_model}Comparison of the measured damped plants and modeled plants for all considered payloads, only ``direct'' terms (\(\epsilon\mathcal{L}_i/u_i^\prime\)) are displayed (\subref{fig:test_id31_hac_plant_effect_mass}). Comparison of all undamped \(\epsilon\mathcal{L}_i/u_i\) and damped \(\epsilon\mathcal{L}_i/u_i^\prime\) measured frequency response functions for all payloads is done in (\subref{fig:test_id31_comp_all_undamped_damped_plants}).}
\end{figure}
\section{Robust Controller Design}
\label{ssec:test_id31_iff_hac_controller}
A first diagonal controller was designed to be robust to change of payloads, which means that every damped plants shown in Figure \ref{fig:test_id31_comp_all_undamped_damped_plants} should be considered during the controller design.
For a first design, a crossover frequency of \(5\,\text{Hz}\) for chosen.
One integrator is added to increase the low frequency gain, a lead is added around \(5\,\text{Hz}\) to increase the stability margins and a first order low pass filter with a cut-off frequency of \(30\,\text{Hz}\) is added to improve the robustness to dynamical uncertainty at high frequency.
The obtained ``decentralized'' loop-gains are shown in Figure \ref{fig:test_id31_hac_loop_gain}.
\begin{equation}\label{eq:test_id31_robust_hac}
K_{\text{HAC}} = g_0 \cdot \underbrace{\frac{\omega_c}{s}}_{\text{int}} \cdot \underbrace{\frac{1}{\sqrt{\alpha}}\frac{1 + \frac{s}{\omega_c/\sqrt{\alpha}}}{1 + \frac{s}{\omega_c\sqrt{\alpha}}}}_{\text{lead}} \cdot \underbrace{\frac{1}{1 + \frac{s}{\omega_0}}}_{\text{LPF}}, \quad \left( \omega_c = 2\pi5\,\text{rad/s},\ \alpha = 2,\ \omega_0 = 2\pi30\,\text{rad/s} \right)
\end{equation}
The closed-loop stability is verified by computing the characteristic Loci (Figure \ref{fig:test_id31_hac_characteristic_loci}).
\begin{figure}[htbp]
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.95\linewidth]{figs/test_id31_hac_loop_gain.png}
\end{center}
\subcaption{\label{fig:test_id31_hac_loop_gain}Loop Gains}
\end{subfigure}
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,width=0.95\linewidth]{figs/test_id31_hac_characteristic_loci.png}
\end{center}
\subcaption{\label{fig:test_id31_hac_characteristic_loci}Characteristic Loci}
\end{subfigure}
\caption{\label{fig:test_id31_hac_loop_gain_loci}Robust High Authority Controller. ``Decentralized loop-gains'' are shown in (\subref{fig:test_id31_hac_loop_gain}) and characteristic loci are shown in (\subref{fig:test_id31_hac_characteristic_loci})}
\end{figure}
\section{Estimation of performances}
\label{ssec:test_id31_iff_hac_perf}
To estimate the performances that can be expected with this HAC-LAC architecture and the designed controllers, two simulations of tomography experiments were performed\footnote{Note that the eccentricity of the ``point of interest'' with respect to the Spindle rotation axis has been tuned from the measurements.}.
The rotational velocity was set to 30rpm, and no payload was added on top of the nano-hexapod.
An open-loop simulation and a closed-loop simulation were performed and compared in Figure \ref{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_sim}.
\begin{figure}[htbp]
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,scale=0.9]{figs/test_id31_tomo_m0_30rpm_robust_hac_iff_sim_xy.png}
\end{center}
\subcaption{\label{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_sim_xy}XY plane}
\end{subfigure}
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,scale=0.9]{figs/test_id31_tomo_m0_30rpm_robust_hac_iff_sim_yz.png}
\end{center}
\subcaption{\label{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_sim_yz}YZ plane}
\end{subfigure}
\caption{\label{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_sim}Position error of the sample in the XY (\subref{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_sim_xy}) and YZ (\subref{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_sim_yz}) planes during a simulation of a tomography experiment at 30RPM. No payload is placed on top of the nano-hexapod.}
\end{figure}
Then the same tomography experiment (i.e. constant spindle rotation at 30rpm, and no payload) was performed experimentally.
The measured position of the ``point of interest'' during the experiment are shown in Figure \ref{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_exp}.
\begin{figure}[htbp]
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,scale=0.9]{figs/test_id31_tomo_m0_30rpm_robust_hac_iff_exp_xy.png}
\end{center}
\subcaption{\label{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_exp_xy}XY plane}
\end{subfigure}
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,scale=0.9]{figs/test_id31_tomo_m0_30rpm_robust_hac_iff_exp_yz.png}
\end{center}
\subcaption{\label{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_exp_yz}YZ plane}
\end{subfigure}
\caption{\label{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_exp}Experimental results of a tomography experiment at 30RPM without payload. Position error of the sample is shown in the XY (\subref{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_exp_xy}) and YZ (\subref{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_exp_yz}) planes.}
\end{figure}
Even though the simulation (Figure \ref{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_sim}) and the experimental results (Figure \ref{fig:test_id31_tomo_m0_30rpm_robust_hac_iff_exp}) are looking similar, the most important metric to compare is the RMS values of the positioning errors in closed-loop.
These are computed for both the simulation and the experimental results and are compared in Table \ref{tab:test_id31_tomo_m0_30rpm_robust_hac_iff_rms}.
The lateral and vertical errors are similar, however the tilt (\(R_y\)) errors are underestimated by the model, which is reasonable as disturbances in \(R_y\) were not modeled.
Results obtained with this conservative HAC are already close to the specifications.
\begin{table}[htbp]
\caption{\label{tab:test_id31_tomo_m0_30rpm_robust_hac_iff_rms}RMS values of the errors for a tomography experiment at 30RPM and without payload. Experimental results and simulation are compared.}
\centering
\begin{tabularx}{0.7\linewidth}{Xccc}
\toprule
& \(D_y\) & \(D_z\) & \(R_y\)\\
\midrule
Experiment (OL) & \(1.8\,\mu\text{mRMS}\) & \(24\,\text{nmRMS}\) & \(10\,\mu\text{radRMS}\)\\
\midrule
Simulation (CL) & \(30\,\text{nmRMS}\) & \(8\,\text{nmRMS}\) & \(73\,\text{nradRMS}\)\\
Experiment (CL) & \(39\,\text{nmRMS}\) & \(11\,\text{nmRMS}\) & \(130\,\text{nradRMS}\)\\
\midrule
Specifications (CL) & \(30\,\text{nmRMS}\) & \(15\,\text{nmRMS}\) & \(250\,\text{nradRMS}\)\\
\bottomrule
\end{tabularx}
\end{table}
\section{Robustness to change of payload}
\label{ssec:test_id31_iff_hac_robustness}
To verify the robustness to the change of payload mass, four simulations of tomography experiments were performed with payloads as shown Figure \ref{fig:test_id31_picture_masses} (i.e. \(0\,kg\), \(13\,kg\), \(26\,kg\) and \(39\,kg\)).
This time, the rotational velocity was set at 1rpm (i.e. 6deg/s), as it is the typical rotational velocity for heavy samples.
The closed-loop systems were stable for all payload conditions, indicating good control robustness.
The tomography experiments that were simulated were then experimentally conducted.
For each payload, a spindle rotating was first performed in open-loop, and then the loop was closed during another full spindle rotation.
An example with the \(26\,\text{kg}\) payload is shown in Figure \ref{fig:test_id31_tomo_m2_1rpm_robust_hac_iff_fit}.
The eccentricity between the ``point of interest'' and the spindle rotation axis is quite large as the added payload mass statically deforms the micro-station stages.
To estimate the open-loop errors, it is supposed that the ``point of interest'' can be perfectly aligned with the spindle rotation axis.
Therefore, the eccentricity is first estimated by performing a circular fit (dashed black circle in Figure \ref{fig:test_id31_tomo_m2_1rpm_robust_hac_iff_fit}), and then subtracted from the data in Figure \ref{fig:test_id31_tomo_m2_1rpm_robust_hac_iff_fit_removed}.
This underestimate the real condition open-loop errors as it is difficult to obtain a perfect alignment in practice.
\begin{figure}[htbp]
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,scale=0.9]{figs/test_id31_tomo_m2_1rpm_robust_hac_iff_fit.png}
\end{center}
\subcaption{\label{fig:test_id31_tomo_m2_1rpm_robust_hac_iff_fit}Errors in $(x,y)$ plane}
\end{subfigure}
\begin{subfigure}{0.49\textwidth}
\begin{center}
\includegraphics[scale=1,scale=0.9]{figs/test_id31_tomo_m2_1rpm_robust_hac_iff_fit_removed.png}
\end{center}
\subcaption{\label{fig:test_id31_tomo_m2_1rpm_robust_hac_iff_fit_removed}Removed eccentricity}
\end{subfigure}
\caption{\label{fig:test_id31_tomo_m2_1rpm_robust_hac_iff}Tomography experiment with rotation velocity of 1rpm, and payload mass of 26kg. Errors in the \((x,y)\) plane are shown in (\subref{fig:test_id31_tomo_m2_1rpm_robust_hac_iff_fit}). The estimated eccentricity is displayed by the black dashed circle. Errors with subtracted eccentricity are shown in (\subref{fig:test_id31_tomo_m2_1rpm_robust_hac_iff_fit_removed}).}
\end{figure}
The RMS values of the open-loop and closed-loop errors for all masses are summarized in Table \ref{tab:test_id31_tomo_1rpm_robust_ol_cl_errors}.
The obtained closed-loop errors are fulfilling the requirements, except for the \(39\,\text{kg}\) payload in the lateral (\(D_y\)) direction.
\begin{table}[htbp]
\caption{\label{tab:test_id31_tomo_1rpm_robust_ol_cl_errors}RMS values of the measured errors during open-loop and closed-loop tomography scans (1rpm) for all considered payloads.}
\centering
\begin{tabularx}{0.9\linewidth}{Xccc}
\toprule
& \(D_y\) & \(D_z\) & \(R_y\)\\
\midrule
\(0\,kg\) OL & \(142\,\text{nm RMS}\) & \(32\,\text{nm RMS}\) & \(460\,\text{nrad RMS}\)\\
\(0\,kg\) CL & \(\bm{15}\,\text{nm RMS}\) & \(\bm{5}\,\text{nm RMS}\) & \(\bm{55}\,\text{nrad RMS}\)\\
\midrule
\(13\,kg\) OL & \(149\,\text{nm RMS}\) & \(26\,\text{nm RMS}\) & \(470\,\text{nrad RMS}\)\\
\(13\,kg\) CL & \(\bm{25}\,\text{nm RMS}\) & \(\bm{6}\,\text{nm RMS}\) & \(\bm{55}\,\text{nrad RMS}\)\\
\midrule
\(26\,kg\) OL & \(202\,\text{nm RMS}\) & \(36\,\text{nm RMS}\) & \(1700\,\text{nrad RMS}\)\\
\(26\,kg\) CL & \(\bm{25}\,\text{nm RMS}\) & \(\bm{7}\,\text{nm RMS}\) & \(\bm{103}\,\text{nrad RMS}\)\\
\midrule
\(39\,kg\) OL & \(297\,\text{nm RMS}\) & \(38\,\text{nm RMS}\) & \(1700\,\text{nrad RMS}\)\\
\(39\,kg\) CL & \(\bm{53}\,\text{nm RMS}\) & \(\bm{9}\,\text{nm RMS}\) & \(\bm{169}\,\text{nrad RMS}\)\\
\midrule
\textbf{Specifications} & \(30\,\text{nmRMS}\) & \(15\,\text{nmRMS}\) & \(250\,\text{nradRMS}\)\\
\bottomrule
\end{tabularx}
\end{table}
\section*{Conclusion}
\printbibliography[heading=bibintoc,title={Bibliography}]
\end{document}