To identify the dynamics of the nano-hexapod, a special suspended table was developed, which consisted of a stiff ``optical breadboard'' suspended on top of four soft springs.
The Nano-Hexapod was then mounted on top of the suspended table such that its dynamics is not affected by complex dynamics except from the suspension modes of the table that can be well characterized and modeled (Section \ref{sec:test_nhexa_table}).
The obtained nano-hexapod dynamics is analyzed in Section \ref{sec:test_nhexa_dynamics}, and compared with the multi-body model in Section \ref{sec:test_nhexa_model}.
The assembly of the nano-hexapod is critical for both avoiding additional stress in the flexible joints (that would result in a loss of stroke) and for precisely determining the Jacobian matrix.
The goal was to fix the six struts to the two nano-hexapod plates (shown in Figure \ref{fig:test_nhexa_nano_hexapod_plates}) while the two plates were parallel and aligned vertically so that all the flexible joints did not experience any stress.
To do so, a precisely machined mounting tool (Figure \ref{fig:test_nhexa_center_part_hexapod_mounting}) is used to position the two nano-hexapod plates during the assembly procedure.
\caption{\label{fig:test_nhexa_received_parts}Nano-Hexapod plates (\subref{fig:test_nhexa_nano_hexapod_plates}) and mounting tool used to position the two plates during assembly (\subref{fig:test_nhexa_center_part_hexapod_mounting})}
The mechanical tolerances of the received plates were checked using a FARO arm\footnote{FARO Arm Platinum 4ft, specified accuracy of \(\pm13\mu m\)} (Figure \ref{fig:test_nhexa_plates_tolerances}) and were found to comply with the requirements\footnote{Location of all the interface surfaces with the flexible joints were checked. The fittings (182H7 and 24H8) with the interface element were also checked.}.
The same was done for the mounting tool\footnote{The height dimension is better than \(40\,\mu m\). The diameter fitting of 182g6 and 24g6 with the two plates is verified.}.
The two plates were then fixed to the mounting tool, as shown in Figure \ref{fig:test_nhexa_mounting_tool_hexapod_top_view}.
The main goal of this ``mounting tool'' is to position the flexible joint interfaces (the ``V'' shapes) of both plates so that a cylinder can rest on the 4 flat interfaces at the same time.
\caption{\label{fig:test_nhexa_dimensional_check}A FARO arm is used to dimensionally check the received parts (\subref{fig:test_nhexa_plates_tolerances}) and after mounting the two plates with the mounting part (\subref{fig:test_nhexa_mounting_tool_hexapod_top_view})}
This corresponds to the diameter of the smallest cylinder which contains all points along the measured axis.
This was again done using the FARO arm, and the results for all six struts are summarized in Table \ref{tab:measured_straightness}.
The straightness was found to be better than \(15\,\mu m\) for all struts\footnote{As the accuracy of the FARO arm is \(\pm13\,\mu m\), the true straightness is probably better than the values indicated. The limitation of the instrument is here reached.}, which is sufficiently good to not induce significant stress of the flexible joint during assembly.
\caption{\label{tab:measured_straightness}Measured straightness between the two ``V'' shapes for the six struts. These measurements were performed twice for each strut.}
The encoder rulers and heads were then fixed to the top and bottom plates, respectively (Figure \ref{fig:test_nhexa_mount_encoder}), and the encoder heads were aligned to maximize the received contrast.
\caption{\label{fig:test_nhexa_mount_encoder}Mounting of the encoders to the Nano-hexapod. The rulers are fixed to the top plate (\subref{fig:test_nhexa_mount_encoder_rulers}) while encoders heads are fixed to the bottom plate (\subref{fig:test_nhexa_mount_encoder_heads})}
The six struts were then fixed to the bottom and top plates one by one.
First, the top flexible joint is fixed so that its flat reference surface is in contact with the top plate.
This step precisely determines the position of the flexible joint with respect to the top plate.
The bottom flexible joint is then fixed.
After mounting all six struts, the mounting tool (Figure \ref{fig:test_nhexa_center_part_hexapod_mounting}) can be disassembled, and the nano-hexapod as shown in Figure \ref{fig:test_nhexa_nano_hexapod_mounted} is fully assembled.
In this case, the modes of the suspended table were chosen to be at much lower frequency than those of the nano-hexapod such that good decoupling is obtained.
Another key advantage is that the suspension modes of the table can be easily represented using a multi-body model.
Therefore, the measured dynamics of the nano-hexapod on top of the suspended table can be compared to a multi-body model representing the same experimental conditions.
Then, four springs\footnote{``SZ8005 20 x 044'' from Steinel. The spring rate is specified at \(17.8\,N/mm\)} were selected with low spring rate such that the suspension modes are below 10Hz.
In order to perform a modal analysis of the suspended table, a total of 15 3-axis accelerometers\footnote{PCB 356B18. Sensitivity is \(1\,V/g\), measurement range is \(\pm5\,g\) and bandwidth is \(0.5\) to \(5\,\text{kHz}\).} were fixed to the breadboard.
Using an instrumented hammer, the first 9 modes could be identified and are summarized in Table \ref{tab:test_nhexa_suspended_table_modes}.
The first 6 modes are suspension modes (i.e. rigid body mode of the breadboard) and are located below 10Hz.
The stiffness of the springs was initially set from the datasheet nominal value of \(17.8\,N/mm\) and then reduced down to \(14\,N/mm\) to better match the measured suspension modes.
The stiffness of the springs in the horizontal plane is set at \(0.5\,N/mm\).
The obtained suspension modes of the multi-body model are compared with the measured modes in Table \ref{tab:test_nhexa_suspended_table_simscape_modes}.
The Nano-Hexapod was then mounted on top of the suspended table, as shown in Figure \ref{fig:test_nhexa_hexa_suspended_table}.
All instrumentation (Speedgoat with ADC, DAC, piezoelectric voltage amplifiers and digital interfaces for the encoder) were configured and connected to the nano-hexapod using many cables.
A block diagram of the (open-loop) system is shown in Figure \ref{fig:test_nhexa_nano_hexapod_signals}.
The frequency response functions from controlled signals \(\mathbf{u}\) to the force sensors voltages \(\mathbf{V}_s\) and to the encoders measured displacements \(\mathbf{d}_e\) are experimentally identified in Section \ref{ssec:test_nhexa_identification}.
The effect of the payload mass on the dynamics is discussed in Section \ref{ssec:test_nhexa_added_mass}.
\caption{\label{fig:test_nhexa_nano_hexapod_signals}Block diagram of the studied system. The command signal generated by the speedgoat is \(\mathbf{u}\), and the measured dignals are \(\mathbf{d}_{e}\) and \(\mathbf{V}_s\). Units are indicated in square brackets.}
To facilitate the future analysis of the measured plant dynamics, a basic modal analysis of the nano-hexapod is performed.
Five 3-axis accelerometers were fixed on the top platform of the nano-hexapod (Figure \ref{fig:test_nhexa_modal_analysis}) and the top platform was excited using an instrumented hammer.
The dynamics of the nano-hexapod from the six command signals (\(u_1\) to \(u_6\)) to the six measured displacement by the encoders (\(d_{e1}\) to \(d_{e6}\)) and to the six force sensors (\(V_{s1}\) to \(V_{s6}\)) were identified by generating low-pass filtered white noise for each command signal, one by one.
Below the first suspension mode, good decoupling can be observed (the amplitude of all off-diagonal terms are \(\approx20\) times smaller than the diagonal terms), indicating the correct assembly of all parts.
From 10Hz up to 1kHz, around 10 resonance frequencies can be observed.
The first 4 are suspension modes (at 122Hz, 143Hz, 165Hz and 191Hz) which correlate the modes measured during the modal analysis in Section \ref{ssec:test_nhexa_enc_struts_modal_analysis}.
Three modes at 237Hz, 349Hz and 395Hz are attributed to the internal strut resonances (this will be checked in Section \ref{ssec:test_nhexa_comp_model_coupling}).
Except for the mode at 237Hz, their impact on the dynamics is small.
The two modes at 665Hz and 695Hz are attributed to the flexible modes of the top platform.
\caption{\label{fig:test_nhexa_identified_frf_de}Measured FRF for the transfer function from \(\mathbf{u}\) to \(\mathbf{d}_e\). The 6 diagonal terms are the colored lines (all superimposed), and the 30 off-diagonal terms are the gray lines.}
Alternating poles and zeros can be observed up to at least 2kHz, which is a necessary characteristics for applying decentralized IFF.
Similar to what was observed for the encoder outputs, all the ``diagonal'' terms are well superimposed, indicating that the same controller can be applied to all the struts.
The first flexible mode of the struts as 235Hz has large amplitude, and therefore, it should be possible to add some damping to this mode using IFF.
\caption{\label{fig:test_nhexa_identified_frf_Vs}Measured FRF for the transfer function from \(\mathbf{u}\) to \(\mathbf{V}_s\). The 6 diagonal terms are the colored lines (all superimposed), and the 30 off-diagonal terms are the shaded black lines.}
One major challenge for controlling the NASS is the wanted robustness to a variation of payload mass; therefore, it is necessary to understand how the dynamics of the nano-hexapod changes with a change in payload mass.
To study how the dynamics changes with the payload mass, up to three ``cylindrical masses'' of \(13\,kg\) each can be added for a total of \(\approx40\,kg\).
The obtained frequency response functions from actuator signal \(u_i\) to the associated encoder \(d_{ei}\) for the four payload conditions (no mass, 13kg, 26kg and 39kg) are shown in Figure \ref{fig:test_nhexa_identified_frf_de_masses}.
The frequencies of the two flexible modes of the top plate first decreased significantly when the first mass was added (from \(\approx700\,Hz\) to \(\approx400\,Hz\)).
This is because the added mass is composed of two half cylinders that are not fixed together.
Therefore, it adds a lot of mass to the top plate without increasing stiffness in one direction.
When more than one ``mass layer'' is added, the half cylinders are added at some angles such that rigidity is added in all directions (see how the three mass ``layers'' are positioned in Figure \ref{fig:test_nhexa_table_mass_3}).
In this case, the frequency of these flexible modes is increased.
In practice, the payload should be one solid body, and no decrease in the frequency of this flexible mode should be observed.
The apparent amplitude of the flexible mode of the strut at 237Hz becomes smaller as the payload mass increased.
\subcaption{\label{fig:test_nhexa_identified_frf_Vs_masses}$u_i$ to $V_{si}$}
\end{subfigure}
\caption{\label{fig:test_struts_mounting}Measured Frequency Response Functions from \(u_i\) to \(d_{ei}\) (\subref{fig:test_nhexa_identified_frf_de_masses}) and from \(u_i\) to \(V_{si}\) (\subref{fig:test_nhexa_identified_frf_Vs_masses}) for all 4 payload conditions. Only diagonal terms are shown.}
In this section, the dynamics measured in Section \ref{sec:test_nhexa_dynamics} is compared with those estimated from the multi-body model.
The nano-hexapod multi-body model was therefore added on top of the vibration table multi-body model, as shown in Figure \ref{fig:test_nhexa_hexa_simscape}.
\caption{\label{fig:test_nhexa_hexa_simscape}3D representation of the multi-body model with the nano-hexapod on top of the suspended table. Three mass ``layers'' are here added}
Both the ``direct'' terms (Section \ref{ssec:test_nhexa_comp_model}) and ``coupling'' terms (Section \ref{ssec:test_nhexa_comp_model_coupling}) of the multi-body model are compared with the measured dynamics.
The \(6\times6\) transfer function matrices from \(\mathbf{u}\) to \(\mathbf{d}_e\) and from \(\mathbf{u}\) to \(\mathbf{V}_s\) are then extracted from the multi-body model.
To do so, the diagonal terms of the extracted transfer function matrices are compared with the measured FRF in Figure \ref{fig:test_nhexa_comp_simscape_diag}.
It can be seen that the 4 suspension modes of the nano-hexapod (at 122Hz, 143Hz, 165Hz and 191Hz) are well modeled.
The three resonances that were attributed to ``internal'' flexible modes of the struts (at 237Hz, 349Hz and 395Hz) cannot be seen in the model, which is reasonable because the APAs are here modeled as a simple uniaxial 2-DoF system.
At higher frequencies, no resonances can be observed in the model, as the top plate and the encoder supports are modeled as rigid bodies.
\caption{\label{fig:test_nhexa_comp_simscape_diag}Comparison of the diagonal elements (i.e. ``direct'' terms) of the measured FRF matrix and the dynamics identified from the multi-body model. Both for the dynamics from \(u\) to \(d_e\) (\subref{fig:test_nhexa_comp_simscape_de_diag}) and from \(u\) to \(V_s\) (\subref{fig:test_nhexa_comp_simscape_Vs_diag})}
Another desired feature of the model is that it effectively represents coupling in the system, as this is often the limiting factor for the control of MIMO systems.
Instead of comparing the full 36 elements of the \(6\times6\) FFR matrix from \(\mathbf{u}\) to \(\mathbf{d}_e\), only the first ``column'' is compared (Figure \ref{fig:test_nhexa_comp_simscape_de_all}), which corresponds to the transfer function from the command \(u_1\) to the six measured encoder displacements \(d_{e1}\) to \(d_{e6}\).
\caption{\label{fig:test_nhexa_comp_simscape_de_all}Comparison of the measured (in blue) and modeled (in red) frequency transfer functions from the first control signal \(u_1\) to the six encoders \(d_{e1}\) to \(d_{e6}\). The APA are here modeled with a 2-DoF mass-spring-damper system.}
The obtained transfer functions from \(u_1\) to the six measured encoder displacements \(d_{e1}\) to \(d_{e6}\) are compared with the measured FRF in Figure \ref{fig:test_nhexa_comp_simscape_de_all_flex}.
While the damping of the suspension modes for the \emph{super-element} is underestimated (which could be solved by properly tuning the proportional damping coefficients), the flexible modes of the struts at 237Hz and 349Hz are well modeled.
Therefore, if the modes of the struts are to be modeled, the \emph{super-element} of the APA300ML can be used at the cost of obtaining a much higher order model.
\caption{\label{fig:test_nhexa_comp_simscape_de_all_flex}Comparison of the measured (in blue) and modeled (in red) frequency transfer functions from the first control signal \(u_1\) to the six encoders \(d_{e1}\) to \(d_{e6}\). The APA are here modeled with a ``super-element''.}
The model dynamics is therefore compared with the measured dynamics for 4 payloads (no payload, 13kg, 26kg and 39kg) in Figure \ref{fig:test_nhexa_comp_simscape_diag_masses}.
The complex conjugate zeros also well match the experiments both for the encoder outputs (Figure \ref{fig:test_nhexa_comp_simscape_de_diag_masses}) and the force sensor outputs (Figure \ref{fig:test_nhexa_comp_simscape_Vs_diag_masses}).
However, as decentralized IFF will be applied, the damping is actively brought, and the open-loop damping value should have very little impact on the obtained plant dynamics.
\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 multi-body model. Both for the dynamics from \(u\) to \(d_e\) (\subref{fig:test_nhexa_comp_simscape_de_diag}) and from \(u\) to \(V_s\) (\subref{fig:test_nhexa_comp_simscape_Vs_diag})}
In order to also check if the model well represents the coupling when high payload masses are used, the transfer functions from \(u_1\) to \(d_{e1}\) to \(d_{e6}\) are compared in the case of the 39kg payload in Figure \ref{fig:test_nhexa_comp_simscape_de_all_high_mass}.
\caption{\label{fig:test_nhexa_comp_simscape_de_all_high_mass}Comparison of the measured (in blue) and modeled (in red) frequency transfer functions from the first control signal \(u_1\) to the six encoders \(d_{e1}\) to \(d_{e6}\)}
The adopted strategy was to identify the nano-hexapod dynamics under conditions in which all factors that could have affected the nano-hexapod dynamics were considered.
This was achieved by developing a suspended table with low frequency suspension modes that can be accurately modeled (Section \ref{sec:test_nhexa_table}).
Although the dynamics of the nano-hexapod was indeed impacted by the dynamics of the suspended platform, this impact was also considered in the multi-body model.
The dynamics of the nano-hexapod was then identified in Section \ref{sec:test_nhexa_dynamics}.
Below the first suspension mode, good decoupling could be observed for the transfer function from \(\bm{u}\) to \(\bm{d}_e\), which enables the design of a decentralized positioning controller based on the encoders for relative positioning purposes.
Many other modes were present above 700Hz, which will inevitably limit the achievable bandwidth.
The observed effect of the payload's mass on the dynamics was quite large, which also represents a complex control challenge.
The frequency response functions from the six DAC voltages \(\bm{u}\) to the six force sensors voltages \(\bm{V}_s\) all have alternating complex conjugate poles and complex conjugate zeros for all the tested payloads (Figure \ref{fig:test_nhexa_comp_simscape_Vs_diag_masses}).
This indicates that it is possible to implement decentralized Integral Force Feedback in a robust manner.
The developed multi-body model of the nano-hexapod was found to accurately represents the suspension modes of the Nano-Hexapod (Section \ref{sec:test_nhexa_model}).
Both FRF matrices from \(\mathbf{u}\) to \(\mathbf{V}_s\) and from \(\mathbf{u}\) to \(\mathbf{d}_e\) are well matching with the measurements, even when considering coupling (i.e. off-diagonal) terms, which are very important from a control perspective.
At frequencies above the suspension modes, the Nano-Hexapod model became inaccurate because the flexible modes were not modeled.
It was found that modeling the APA300ML using a \emph{super-element} allows to model the internal resonances of the struts.
The same can be done with the top platform and the encoder supports; however, the model order would be higher and may become unpractical for simulation.
Obtaining a model that accurately represents the complex dynamics of the Nano-Hexapod was made possible by the modeling approach used in this study.
This approach involved tuning and validating models of individual components (such as the APA and flexible joints) using dedicated test benches.
The different models could then be combined to form the Nano-Hexapod dynamical model.
If a model of the nano-hexapod was developed in one time, it would be difficult to tune all the model parameters to match the measured dynamics, or even to know if the model ``structure'' would be adequate to represent the system dynamics.