diff --git a/figs/closed_loop_sim_zoom.gif b/figs/closed_loop_sim_zoom.gif new file mode 100644 index 0000000..42de558 Binary files /dev/null and b/figs/closed_loop_sim_zoom.gif differ diff --git a/figs/open_loop_sim.gif b/figs/open_loop_sim.gif new file mode 100644 index 0000000..4b6394c Binary files /dev/null and b/figs/open_loop_sim.gif differ diff --git a/figs/open_loop_sim_zoom.gif b/figs/open_loop_sim_zoom.gif new file mode 100644 index 0000000..9f9059c Binary files /dev/null and b/figs/open_loop_sim_zoom.gif differ diff --git a/figs/simscape_picture.png b/figs/simscape_picture.png new file mode 100644 index 0000000..a77fe07 Binary files /dev/null and b/figs/simscape_picture.png differ diff --git a/index.html b/index.html index cc964e2..1f0aee2 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Design of the Nano-Hexapod and associated Control Architectures - Summary @@ -35,70 +35,72 @@

Table of Contents

@@ -109,7 +111,7 @@ The overall objective is to design a nano-hexapod an the associated control arch

-To understand the design challenges of such system, a short introduction to Feedback control is provided in Section 1. +To understand the design challenges of such system, a short introduction to Feedback control is provided in Section 1. The mathematical tools (Power Spectral Density, Noise Budgeting, …) that will be used throughout this study are also introduced.

@@ -118,53 +120,53 @@ The mathematical tools (Power Spectral Density, Noise Budgeting, …) that To be able to develop both the nano-hexapod and the control architecture in an optimal way, we need a good estimation of:

We then develop a model of the system that must represent all the important physical effects in play. -Such model is presented in Section 4. +Such model is presented in Section 4.

A modular model of the nano-hexapod is then included in the system. The effects of the nano-hexapod characteristics on the dynamics are then studied. -Based on that, an optimal choice of the nano-hexapod stiffness is made (Section 5). +Based on that, an optimal choice of the nano-hexapod stiffness is made (Section 5).

Finally, using the optimally designed nano-hexapod, a robust control architecture is developed. -Simulations are performed to show that this design gives acceptable performance and the required robustness (Section 6). +Simulations are performed to show that this design gives acceptable performance and the required robustness (Section 6).

-
-

1 Introduction to Feedback Systems and Noise budgeting

+
+

1 Introduction to Feedback Systems and Noise budgeting

- +

-In this section, we first introduce some basics of feedback systems (Section 1.1). +In this section, we first introduce some basics of feedback systems (Section 1.1). This should highlight the challenges in terms of combined performance and robustness.

-In Section 1.2 is introduced the dynamic error budgeting which is a powerful tool that allows to derive the total error in a dynamic system from multiple disturbance sources. +In Section 1.2 is introduced the dynamic error budgeting which is a powerful tool that allows to derive the total error in a dynamic system from multiple disturbance sources. This tool will be widely used throughout this study to both predict the performances and identify the effects that do limit the performances.

-
-

1.1 Feedback System

+
+

1.1 Feedback System

- +

The use of feedback control as several advantages and pitfalls that are listed below (taken from schmidt14_desig_high_perfor_mechat_revis_edition): @@ -192,11 +194,11 @@ Thus the robustness properties of the feedback system must be carefully g

-
-

1.1.1 Simplified Feedback Control Diagram for the NASS

+
+

1.1.1 Simplified Feedback Control Diagram for the NASS

-Let’s consider the block diagram shown in Figure 1 where the signals are: +Let’s consider the block diagram shown in Figure 1 where the signals are:

  • \(y\): the relative position of the sample with respect to the granite (the quantity we wish to control)
  • @@ -216,7 +218,7 @@ And the dynamical blocks are:
-
+

classical_feedback_small.png

Figure 1: Block Diagram of a simple feedback system

@@ -238,11 +240,11 @@ In the next section, we see how the use of the feedback system permits to lower
-
-

1.1.2 How does the feedback loop is modifying the system behavior?

+
+

1.1.2 How does the feedback loop is modifying the system behavior?

-If we write down the position error signal \(\epsilon = r - y\) as a function of the reference signal \(r\), the disturbances \(d\) and the measurement noise \(n\) (using the feedback diagram in Figure 1), we obtain: +If we write down the position error signal \(\epsilon = r - y\) as a function of the reference signal \(r\), the disturbances \(d\) and the measurement noise \(n\) (using the feedback diagram in Figure 1), we obtain: \[ \epsilon = \frac{1}{1 + GK} r + \frac{GK}{1 + GK} n - \frac{G_d}{1 + GK} d \]

@@ -287,8 +289,8 @@ As shown in the next section, there is a trade-off between the disturbance reduc
-
-

1.1.3 Trade off: Disturbance Reduction / Noise Injection

+
+

1.1.3 Trade off: Disturbance Reduction / Noise Injection

We have from the definition of \(S\) and \(T\) that: @@ -306,7 +308,7 @@ There is therefore a trade-off between the disturbance rejection and the meas

-Typical shapes of \(|S|\) and \(|T|\) as a function of frequency are shown in Figure 2. +Typical shapes of \(|S|\) and \(|T|\) as a function of frequency are shown in Figure 2. We can observe that \(|S|\) and \(|T|\) exhibit different behaviors depending on the frequency band:

    @@ -327,7 +329,7 @@ We can observe that \(|S|\) and \(|T|\) exhibit different behaviors depending on
-
+

h-infinity-2-blocs-constrains.png

Figure 2: Typical shapes and constrain of the Sensibility and Transmibility closed-loop transfer functions

@@ -335,11 +337,11 @@ We can observe that \(|S|\) and \(|T|\) exhibit different behaviors depending on
-
-

1.1.4 Trade off: Robustness / Performance

+
+

1.1.4 Trade off: Robustness / Performance

- +

@@ -360,11 +362,11 @@ The main issue it that for stability reasons, the behavior of the mechanical

-For mechanical systems, this generally means that control bandwidth should take place before any appearing of flexible dynamics (Right part of Figure 3). +For mechanical systems, this generally means that control bandwidth should take place before any appearing of flexible dynamics (Right part of Figure 3).

-
+

oomen18_next_gen_loop_gain.png

Figure 3: Envisaged developments in motion systems. In traditional motion systems, the control bandwidth takes place in the rigid-body region. In the next generation systemes, flexible dynamics are foreseen to occur within the control bandwidth. oomen18_advan_motion_contr_precis_mechat

@@ -394,11 +396,11 @@ This problem of robustness represent one of the main challenge for the de
-
-

1.2 Dynamic error budgeting

+
+

1.2 Dynamic error budgeting

- +

The dynamic error budgeting is a powerful tool to study the effect of multiple error sources and to see how the feedback system does reduce the effect @@ -414,8 +416,8 @@ Finally,

-
-

1.2.1 Power Spectral Density

+
+

1.2.1 Power Spectral Density

The Power Spectral Density (PSD) \(S_{xx}(f)\) of the time domain signal \(x(t)\) is defined as the Fourier transform of the autocorrelation function: @@ -442,8 +444,8 @@ One can also integrate the infinitesimal power \(S_{xx}(\omega)d\omega\) over a

-
-

1.2.2 Cumulative Power Spectrum

+
+

1.2.2 Cumulative Power Spectrum

The Cumulative Power Spectrum is the cumulative integral of the Power Spectral Density starting from \(0\ \text{Hz}\) with increasing frequency: @@ -473,15 +475,15 @@ The Cumulative Power Spectrum will be used to determine in which frequency band

-
-

1.2.3 Modification of a signal’s PSD when going through an LTI system

+
+

1.2.3 Modification of a signal’s PSD when going through an LTI system

-Let’s consider a signal \(u\) with a PSD \(S_{uu}\) going through a LTI system \(G(s)\) that outputs a signal \(y\) with a PSD (Figure 4). +Let’s consider a signal \(u\) with a PSD \(S_{uu}\) going through a LTI system \(G(s)\) that outputs a signal \(y\) with a PSD (Figure 4).

-
+

psd_lti_system.png

Figure 4: LTI dynamical system \(G(s)\) with input signal \(u\) and output signal \(y\)

@@ -496,11 +498,11 @@ The Power Spectral Density of the output signal \(y\) can be computed using:
-
-

1.2.4 PSD of combined signals

+
+

1.2.4 PSD of combined signals

-Let’s consider a signal \(y\) that is the sum of two uncorrelated signals \(u\) and \(v\) (Figure 5). +Let’s consider a signal \(y\) that is the sum of two uncorrelated signals \(u\) and \(v\) (Figure 5).

@@ -509,7 +511,7 @@ We have that the PSD of \(y\) is equal to sum of the PSD and \(u\) and the PSD o

-
+

psd_sum.png

Figure 5: \(y\) as the sum of two signals \(u\) and \(v\)

@@ -517,11 +519,11 @@ We have that the PSD of \(y\) is equal to sum of the PSD and \(u\) and the PSD o
-
-

1.2.5 Dynamic Noise Budgeting

+
+

1.2.5 Dynamic Noise Budgeting

-Let’s consider the Feedback architecture in Figure 1 where the position error \(\epsilon\) is equal to: +Let’s consider the Feedback architecture in Figure 1 where the position error \(\epsilon\) is equal to: \[ \epsilon = S r + T n - G_d S d \]

@@ -545,48 +547,76 @@ To estimate the PSD of the position error \(\epsilon\) and thus the RMS residual
  • The Power Spectral Densities of the signals affecting the system:
      -
    • \(S_{dd}\): disturbances, this will be done in Section 3
    • +
    • \(S_{dd}\): disturbances, this will be done in Section 3
    • \(S_{nn}\): sensor noise, this can be estimated from the sensor data-sheet
    • \(S_{rr}\): which is a deterministic signal that we choose. For simple tomography experiment, we can consider that it is equal to \(0\)
  • The dynamics of the complete system comprising the micro-station and the nano-hexapod: \(G\), \(G_d\). -To do so, we need to identify the dynamics of the micro-station (Section 2), include this dynamics in a model (Section 4) and add a model of the nano-hexapod to the model (Section 5)
  • -
  • The controller \(K\) that will be designed in Section 6
  • +To do so, we need to identify the dynamics of the micro-station (Section 2), include this dynamics in a model (Section 4) and add a model of the nano-hexapod to the model (Section 5) +
  • The controller \(K\) that will be designed in Section 6
-
-

2 Identification of the Micro-Station Dynamics

+
+

2 Identification of the Micro-Station Dynamics

- +

-As explained before, it is very important to have a good estimation of the micro-station dynamics as it will be coupled with the dynamics of the nano-hexapod and thus is very important for both the design of the nano-hexapod and the controller. +As explained before, it is very important to have a good estimation of the micro-station dynamics as it will be coupled with the dynamics of the nano-hexapod and thus is very important for both the design of the nano-hexapod and controller. +

+ +

The estimated dynamics will also be used to tune the developed multi-body model of the micro-station with which the simulations will be performed.

All the measurements performed on the micro-station are detailed in this document and summarized in the following sections.

+ + +

+The general procedure to identify the dynamics of the micro-station is shown in Figure 6. +

+ +

+The steps are: +

+
    +
  1. extract a Response Model (Frequency Response Functions) from measurements
  2. +
  3. convert the Response Model into a Modal Model (Natural Frequencies and Mode Shapes)
  4. +
  5. extract a Spatial Model from the Modal Model (Mass/Damping/Stiffness matrices)
  6. +
+ + +
+

vibration_analysis_procedure.png +

+

Figure 6: Vibration Analysis Procedure

-
-

2.1 Setup

+

+The extraction of the Spatial Model (3rd step) was not performed as it requires a lot of time and was not judge necessary. +

+
+ +
+

2.1 Setup

- +

-To measure the dynamics of such complicated system, it as been chosen to perform a full modal analysis. +To measure the dynamics of such complicated system, it as been chosen to perform a modal analysis.

-To limit the number of degrees of freedom to be measured, we suppose that in the frequency range of interest (DC-300Hz), each of the positioning stage is behaving as a solid body. +To limit the number of degrees of freedom to be measured, we suppose that in the frequency range of interest (DC-300Hz), each of the positioning stage is behaving as a solid body. Thus, to fully describe the dynamics of the station, we (only) need to measure 6 degrees of freedom on each of the positioning stage (that is 36 degrees of freedom for the 6 solid bodies).

@@ -604,13 +634,13 @@ In order to perform the Modal Analysis, the following devices were used: The measurement thus consists of:

    -
  • Exciting the structure at the same location with the Hammer (Figure 6)
  • +
  • Exciting the structure at the same location with the Hammer (Figure 7)
  • Move the accelerometers to measure all the DOF of the structure. The position of the accelerometers are:
    • 4 on the first granite
    • 4 on the second granite
    • -
    • 4 on top of the translation stage (figure 7)
    • +
    • 4 on top of the translation stage (figure 8)
    • 4 on top of the tilt stage
    • 3 on top of the spindle
    • 4 on top of the hexapod
    • @@ -618,34 +648,34 @@ The position of the accelerometers are:

    -In total, 69 degrees of freedom are measured (23 tri axis accelerometers) which is way more that what was required. +In total, 69 degrees of freedom are measured (23 tri axis accelerometers) which is more that what was required.

    -We chose to have some redundancy in the measurement to be able to verify that the solid-body assumption was correct for each of the stage. +We chose to have some redundancy in the measurement to be able to verify that the solid-body assumption is correct for each of the stage.

    -
    +

    hammer_z.gif

    -

    Figure 6: Example of one hammer impact

    +

    Figure 7: Example of one hammer impact

    -
    +

    accelerometers_ty_overview.jpg

    -

    Figure 7: 3 tri axis accelerometers fixed to the translation stage

    +

    Figure 8: 3 tri axis accelerometers fixed to the translation stage

    -
    -

    2.2 Results

    +
    +

    2.2 Results

    - +

    @@ -653,21 +683,21 @@ From the measurements, we obtain all the transfer functions from forces applied

    -Modal shapes and natural frequencies are then computed. Example of mode shapes are shown in Figures 8 9. +Modal shapes and natural frequencies are then computed. Example of mode shapes are shown in Figures 9 10.

    -
    +

    mode1.gif

    -

    Figure 8: First mode

    +

    Figure 9: First mode that shows a suspension mode, probably due to bad leveling of one Airloc

    -
    +

    mode6.gif

    -

    Figure 9: Sixth mode

    +

    Figure 10: Sixth mode

    @@ -679,19 +709,49 @@ We then reduce the number of degrees of freedom from 69 (23 accelerometers with From the reduced transfer function matrix, we can re-synthesize the response at the 69 measured degrees of freedom and we find that we have an exact match.

    +

    -This confirms the fact that the stages are indeed behaving as a solid body in the frequency band of interest. +This confirms the fact that the stages are indeed behaving as a solid body in the frequency band of interest. This thus means that a multi-body model can be used to represent the dynamics of the micro-station.

    + +
    + + +

    +Many Frequency Response Functions (FRF) are obtained from the measurements. +Examples of FRF are shown in Figure 11. +These FRF will be used to compare the dynamics of the multi-body model with the micro-station dynamics. +

    + + +
    +

    frf_all_bodies_one_direction.png +

    +

    Figure 11: Frequency Response Function from forces applied by the Hammer in the X direction to the acceleration of each solid body in the X direction

    -
    -

    3 Identification of the Disturbances

    +
    +

    2.3 Conclusion

    +
    +
    +

    +The modal analysis of the micro-station confirmed the fact that a multi-body model should be able to correctly represents the micro-station dynamics. +In Section 4, the obtained Frequency Response Functions will be used to compare the model dynamics with the micro-station dynamics. +

    + +
    +
    +
    +
    + +
    +

    3 Identification of the Disturbances

    - +

    In this section, we wish to list and identify all the disturbances affecting the system. @@ -718,11 +778,11 @@ Open Loop Noise budget: -

    3.1 Ground Motion

    +
    +

    3.1 Ground Motion

    - +

    @@ -730,14 +790,14 @@ The ground motion can easily be estimated using an inertial sensor with sufficie

    -To verify that the inertial sensors are sensitive enough, a Huddle test has been performed (Figure 10). +To verify that the inertial sensors are sensitive enough, a Huddle test has been performed (Figure 12).

    -
    +

    geophones.jpg

    -

    Figure 10: Huddle Test Setup

    +

    Figure 12: Huddle Test Setup

    @@ -746,19 +806,19 @@ The low frequency differences between the ground motion at ID31 and ID09 is just

    -
    +

    ground_motion_compare.png

    -

    Figure 11: Comparison of the PSD of the ground motion measured at different location

    +

    Figure 13: Comparison of the PSD of the ground motion measured at different location

    -
    -

    3.2 Stage Vibration - Effect of Control systems

    +
    +

    3.2 Stage Vibration - Effect of Control systems

    - +

    @@ -781,11 +841,11 @@ Complete reports on these measurements are accessible -

    3.3 Stage Vibration - Effect of Motion

    +
    +

    3.3 Stage Vibration - Effect of Motion

    - +

    @@ -797,18 +857,18 @@ Details reports are accessible -

    Spindle and Slip-Ring

    -
    +
    +

    Spindle and Slip-Ring

    +

    -The setup for the measurement of vibrations induced by rotation of the Spindle and Slip-ring is shown in Figure 12. +The setup for the measurement of vibrations induced by rotation of the Spindle and Slip-ring is shown in Figure 14.

    -
    +

    rz_meas_errors.gif

    -

    Figure 12: Measurement of the sample’s vertical motion when rotating at 6rpm

    +

    Figure 14: Measurement of the sample’s vertical motion when rotating at 6rpm

    @@ -821,7 +881,7 @@ A geophone is fixed at the location of the sample and we measure the motion:

-The obtained Power Spectral Density of the sample’s absolute velocity are shown in Figure 13. +The obtained Power Spectral Density of the sample’s absolute velocity are shown in Figure 15.

@@ -837,10 +897,10 @@ However, when rotating with the Spindle (normal functioning mode): -

+

sr_sp_psd_sample_compare.png

-

Figure 13: Comparison of the ASD of the measured voltage from the Geophone at the sample location

+

Figure 15: Comparison of the ASD of the measured voltage from the Geophone at the sample location

@@ -852,48 +912,48 @@ Some investigation should be performed on the Spindle to determine where does th
-
-

Translation Stage

-
+
+

Translation Stage

+

The same setup is used (a geophone is located at the sample’s location and another on the granite).

-We impose a 1Hz triangle motion with an amplitude of \(\pm 2.5mm\) on the translation stage (Figure 14), and we measure the absolute velocity of both the sample and the granite. +We impose a 1Hz triangle motion with an amplitude of \(\pm 2.5mm\) on the translation stage (Figure 16), and we measure the absolute velocity of both the sample and the granite.

-
+

ty_position_time.png

-

Figure 14: Y position of the translation stage measured by the encoders

+

Figure 16: Y position of the translation stage measured by the encoders

-The time domain absolute vertical velocity of the sample and granite are shown in Figure 15. +The time domain absolute vertical velocity of the sample and granite are shown in Figure 17. It is shown that quite large motion of the granite is induced by the translation stage scans. This could be a problem if this is shown to excite the metrology frame of the nano-focusing lens position stage.

-
+

ty_z_time.png

-

Figure 15: Vertical velocity of the sample and marble when scanning with the translation stage

+

Figure 17: Vertical velocity of the sample and marble when scanning with the translation stage

-The Amplitude Spectral Densities of the measured absolute velocities are shown in Figure 16. +The Amplitude Spectral Densities of the measured absolute velocities are shown in Figure 18. We can see many peaks starting from 1Hz showing the large spectral content probably due to the triangular reference of the translation stage.

-
+

asd_z_direction.png

-

Figure 16: Amplitude spectral density of the measure velocity corresponding to the geophone in the vertical direction located on the granite and at the sample location when the translation stage is scanning at 1Hz

+

Figure 18: Amplitude spectral density of the measure velocity corresponding to the geophone in the vertical direction located on the granite and at the sample location when the translation stage is scanning at 1Hz

@@ -906,15 +966,15 @@ A smoother motion for the translation stage (such as a sinus motion) could proba
-
-

3.4 Sum of all disturbances

+
+

3.4 Sum of all disturbances

We can now compare the effect of all the disturbance sources on the position error (relative motion of the sample with respect to the granite).

-The Power Spectral Density of the motion error due to the ground motion, translation stage scans and spindle rotation are shown in Figure 17. +The Power Spectral Density of the motion error due to the ground motion, translation stage scans and spindle rotation are shown in Figure 19.

@@ -922,22 +982,22 @@ We can see that the ground motion is quite small compare to the translation stag

-
+

dist_effect_relative_motion.png

-

Figure 17: Amplitude Spectral Density fo the motion error due to disturbances

+

Figure 19: Amplitude Spectral Density fo the motion error due to disturbances

-The Cumulative Amplitude Spectrum is shown in Figure 18. +The Cumulative Amplitude Spectrum is shown in Figure 20. It is shown that the motion induced by translation stage scans and spindle rotation are in the micro-meter range.

-
+

dist_effect_relative_motion_cas.png

-

Figure 18: Cumulative Amplitude Spectrum of the motion error due to disturbances

+

Figure 20: Cumulative Amplitude Spectrum of the motion error due to disturbances

@@ -954,8 +1014,8 @@ From that, we can conclude that we will probably need a control bandwidth to aro

-
-

3.5 Better estimation of the disturbances

+
+

3.5 Better estimation of the disturbances

All the disturbance measurements were made with inertial sensors, and to obtain the relative motion sample/granite, two inertial sensors were used and the signals were subtracted. @@ -979,9 +1039,10 @@ The detector requirement would be:

-
-

3.6 Conclusion

+
+

3.6 Conclusion

+

Main disturbance sources have been identified. These disturbances will then be included in the multi-body model. @@ -998,118 +1059,195 @@ If heavy/stiff cables are to be fixed to the sample, this should be quantified a Having better estimation of the disturbances would allows to more precisely estimate the attainable performances. This should however not change the conclusion of this study nor significantly change the nano-hexapod design.

+ +
-
-

4 Multi Body Model

+
+

4 Multi Body Model

- +

-https://tdehaeze.github.io/nass-simscape/ +As was shown during the modal analysis (Section 2), the micro-station behaves as multiple rigid bodies (granite, translation stage, tilt stage, spindle, hexapod) with some discrete flexibility between those solid bodies.

-Multi-Body model +Thus, a multi-body model is perfect to represent such dynamics. +

+ +

+To do so, we use the Matlab’s Simscape toolbox. +A small summary of the multi-body Simscape is available here and each of the modeled stage is described here.

-
-

4.1 Validity of the model

+
+

4.1 Multi-Body model

-The mass/inertia of each stage is automatically computed from the geometry and the density of the materials. -

- -

-The stiffness of each joint is first set to measured values or stiffness from data sheets. +The mass/inertia of each stage is automatically computed from the imported geometry and the material’s density.

+The (6dof) stiffness between two solid bodies is first guessed from either measurements of data-sheets. Then, the values of the stiffness and damping of each joint is manually tuned until the obtained dynamics is sufficiently close to the measured dynamics.

-

-We could, from the measurement, automatically extract the stiffness and damping values, we this would have required a lot of work and having a perfect match is not required here. -

- -

-Comparison model - measurements : https://tdehaeze.github.io/nass-simscape/identification.html +The 3D representation of the simscape model is shown in Figure 21.

-
-

identification_comp_top_stages.png +

+

simscape_picture.png

-

Figure 19: Figure caption

+

Figure 21: 3D representation of the simscape model

-
-

4.2 Wanted position of the sample and position error

+
+

4.2 Validity of the model’s dynamics

-From the reference position of each stage, we can compute the wanted pose of the sample with respect to the granite. -This is done with multiple transformation matrices. +It is very difficult the tune the dynamics of such model as there are more than 50 parameters and many curves to compare between the model and the measurements.

-Then, from the measurement of the metrology corresponding to the position of the sample with respect to the granite, we can compute the position error of the sample expressed in a frame fixed to the nano-hexapod. +The comparison of three of the Frequency Response Functions are shown in Figure 22. +

+ +

+Most of the other measured FRFs and identified transfer functions from the multi-body model have the same level of matching. +

+ +

+We believe that the model is representing the micro-station dynamics with sufficient precision for the current analysis.

-
-

control-schematic-nass.png +

+

identification_comp_top_stages.png

-

Figure 20: Figure caption

+

Figure 22: Frequency Response function from Hammer force in the X,Y and Z directions to the X,Y and Z displacements of the micro-hexapod’s top platform. The measurements are shown in blue and the Model in red.

-Measurement of the sample’s position - conversion of positioning error in the frame of the Nano-hexapod for control: https://tdehaeze.github.io/nass-simscape/positioning_error.html +More detailed comparison between the model and the measured dynamics is performed here.

-
-
-
-

4.3 Simulation of Experiments

-
+

-Now that the +Now that the multi-body model dynamics as been tuned, the following elements are included:

    -
  • dynamics of the model is tuned
  • -
  • disturbances are included in the model
  • +
  • Actuators to perform the motion of each stage (translation, tilt, spindle, hexapod)
  • +
  • Sensors to measure the motion of each stage and the relative motion of the sample with respect to the granite (metrology system)
  • +
  • Disturbances such as ground motion and stage’s vibrations
+

-We can perform simulation of experiments. +Then, using the model, we can

+
    +
  • perform simulation of experiments in presence of disturbances
  • +
  • measure the motion of the solid-bodies
  • +
  • identify the dynamics from inputs (forces, imposed displacement) to outputs (measured motion, force sensor, etc.) which will be useful for the nano-hexapod and control design
  • +
  • include a multi-body model of the nano-hexapod and closed-loop simulations
  • +
+
+
+ +
+

4.3 Wanted position of the sample and position error

+
+

+For the control of the nano-hexapod, we need to now the sample position error (the motion to be compensated) in the frame of the nano-hexapod. +

+ +

+To do so, we need to perform several computations (summarized in Figure 23): +

+
    +
  • First, we need to determine the actual wanted pose (3 translations and 3 rotations) of the sample with respect to the granite. +This is determined from the wanted motion of each micro-station stage. +Each wanted stage motion is represented by an homogeneous transformation matrix (explain here), then these matrices are combined to give to total wanted motion of the sample with respect to the granite.
  • +
  • Then, we need to determine the actual pose of the sample with respect to the granite. +This will be performed by several interferometers and several computation will be required to compute the pose of the sample from the interferometers measurements. +However we here directly measure the 3 translations and 3 rotations of the sample using a special simscape block.
  • +
  • Finally, we need to compare the wanted pose with the measured pose to compute the position error of the sample. +This position error can be expressed in the frame of the granite, or in the frame of the (rotating) nano-hexapod. +Both computation are performed.
  • +
+ + +
+

control-schematic-nass.png +

+

Figure 23: Figure caption

+
+ +

+More details about these computations are accessible here. +

+
+
+ +
+

4.4 Simulation of Experiments

+
+

+Now that the dynamics of the model is tuned and the disturbances included in the model, we can perform simulation of experiments. +

+ +

+We first do a simulation where the nano-hexapod is considered to be a solid-body to estimate the sample’s motion that we have without an control. +

+ +

+An animation of the obtained motion is shown in Figure . +

+ + +
+

open_loop_sim.gif +

+

Figure 24: Figure caption

+
+ + + +
+

open_loop_sim_zoom.gif +

+

Figure 25: Figure caption

+

https://tdehaeze.github.io/nass-simscape/experiments.html

-21 +26

-
+

exp_scans_rz_dist.png

-

Figure 21: Position error of the Sample with respect to the granite during a Tomography Experiment with included disturbances

+

Figure 26: Position error of the Sample with respect to the granite during a Tomography Experiment with included disturbances

-
-

4.4 Conclusion

-
+
+

4.5 Conclusion

+

Possible to study many effects. @@ -1125,11 +1263,11 @@ Simulation of experiments to validate performance.

-
-

5 Optimal Nano-Hexapod Design

+
+

5 Optimal Nano-Hexapod Design

- +

As explain before, the nano-hexapod properties (mass, stiffness, architecture, …) will influence: @@ -1149,12 +1287,12 @@ We which here to choose the nano-hexapod properties such that:

-
-

5.1 Optimal Stiffness to reduce the effect of disturbances

+
+

5.1 Optimal Stiffness to reduce the effect of disturbances

-
-

5.2 Optimal Stiffness

+
+

5.2 Optimal Stiffness

The goal is to design a system that is robust. @@ -1225,8 +1363,8 @@ Effect of Nano-hexapod stiffness on the Sensibility to disturbances: -

5.3 Sensors to be included

+
+

5.3 Sensors to be included

Ways to damp: @@ -1251,22 +1389,22 @@ Sensors to be included:

-
-

6 Robust Control Architecture

+
+

6 Robust Control Architecture

-
-

6.1 Simulation of Tomography Experiments

+
+

6.1 Simulation of Tomography Experiments

- +

    @@ -1279,12 +1417,12 @@ Sensors to be included:
-
-

6.2 Conclusion

+
+

6.2 Conclusion

-
-

7 Further notes

+
+

7 Further notes

Soft granite @@ -1311,7 +1449,7 @@ Slip-Ring noise?

Date: 04-2020

Author: Thomas Dehaeze

-

Created: 2020-04-27 lun. 11:50

+

Created: 2020-04-27 lun. 16:22

diff --git a/index.org b/index.org index 5bbbef1..93e9bc9 100644 --- a/index.org +++ b/index.org @@ -642,49 +642,102 @@ This should however not change the conclusion of this study nor significantly ch <> ** Introduction :ignore: -https://tdehaeze.github.io/nass-simscape/ +As was shown during the modal analysis (Section [[sec:micro_station_dynamics]]), the micro-station behaves as multiple rigid bodies (granite, translation stage, tilt stage, spindle, hexapod) with some discrete flexibility between those solid bodies. -Multi-Body model +Thus, a *multi-body model* is perfect to represent such dynamics. -** Validity of the model -The mass/inertia of each stage is automatically computed from the geometry and the density of the materials. +To do so, we use the Matlab's [[https://www.mathworks.com/products/simscape.html][Simscape]] toolbox. +A small summary of the multi-body Simscape is available [[https://tdehaeze.github.io/nass-simscape/simscape.html][here]] and each of the modeled stage is described [[https://tdehaeze.github.io/nass-simscape/simscape_subsystems.html][here]]. -The stiffness of each joint is first set to measured values or stiffness from data sheets. +** Multi-Body model +The mass/inertia of each stage is automatically computed from the imported geometry and the material's density. +The (6dof) stiffness between two solid bodies is first guessed from either measurements of data-sheets. Then, the values of the stiffness and damping of each joint is manually tuned until the obtained dynamics is sufficiently close to the measured dynamics. +The 3D representation of the simscape model is shown in Figure [[fig:simscape_picture]]. -We could, from the measurement, automatically extract the stiffness and damping values, we this would have required a lot of work and having a perfect match is not required here. +#+name: fig:simscape_picture +#+caption: 3D representation of the simscape model +[[file:figs/simscape_picture.png]] -Comparison model - measurements : https://tdehaeze.github.io/nass-simscape/identification.html +** Validity of the model's dynamics +It is very difficult the tune the dynamics of such model as there are more than 50 parameters and many curves to compare between the model and the measurements. + +The comparison of three of the Frequency Response Functions are shown in Figure [[fig:identification_comp_top_stages]]. + +Most of the other measured FRFs and identified transfer functions from the multi-body model have the same level of matching. + +We believe that the model is representing the micro-station dynamics with sufficient precision for the current analysis. #+name: fig:identification_comp_top_stages -#+caption: Figure caption +#+caption: Frequency Response function from Hammer force in the X,Y and Z directions to the X,Y and Z displacements of the micro-hexapod's top platform. The measurements are shown in blue and the Model in red. [[file:figs/identification_comp_top_stages.png]] +More detailed comparison between the model and the measured dynamics is performed [[https://tdehaeze.github.io/nass-simscape/identification.html][here]]. + + +Now that the multi-body model dynamics as been tuned, the following elements are included: +- Actuators to perform the motion of each stage (translation, tilt, spindle, hexapod) +- Sensors to measure the motion of each stage and the relative motion of the sample with respect to the granite (metrology system) +- Disturbances such as ground motion and stage's vibrations + + +Then, using the model, we can +- perform simulation of experiments in presence of disturbances +- measure the motion of the solid-bodies +- identify the dynamics from inputs (forces, imposed displacement) to outputs (measured motion, force sensor, etc.) which will be useful for the nano-hexapod and control design +- include a multi-body model of the nano-hexapod and closed-loop simulations + ** Wanted position of the sample and position error +For the control of the nano-hexapod, we need to now the sample position error (the motion to be compensated) in the frame of the nano-hexapod. -From the reference position of each stage, we can compute the wanted pose of the sample with respect to the granite. -This is done with multiple transformation matrices. - -Then, from the measurement of the metrology corresponding to the position of the sample with respect to the granite, we can compute the position error of the sample expressed in a frame fixed to the nano-hexapod. +To do so, we need to perform several computations (summarized in Figure [[fig:control-schematic-nass]]): +- First, we need to determine the actual *wanted pose* (3 translations and 3 rotations) of the sample with respect to the granite. + This is determined from the wanted motion of each micro-station stage. + Each wanted stage motion is represented by an homogeneous transformation matrix (explain [[http://planning.cs.uiuc.edu/node111.html][here]]), then these matrices are combined to give to total wanted motion of the sample with respect to the granite. +- Then, we need to determine the *actual pose* of the sample with respect to the granite. + This will be performed by several interferometers and several computation will be required to compute the pose of the sample from the interferometers measurements. + However we here directly measure the 3 translations and 3 rotations of the sample using a special simscape block. +- Finally, we need to compare the wanted pose with the measured pose to compute the position error of the sample. + This position error can be expressed in the frame of the granite, or in the frame of the (rotating) nano-hexapod. + Both computation are performed. #+name: fig:control-schematic-nass #+caption: Figure caption [[file:figs/control-schematic-nass.png]] -Measurement of the sample's position - conversion of positioning error in the frame of the Nano-hexapod for control: https://tdehaeze.github.io/nass-simscape/positioning_error.html +More details about these computations are accessible [[https://tdehaeze.github.io/nass-simscape/positioning_error.html][here]]. ** Simulation of Experiments -Now that the -- dynamics of the model is tuned -- disturbances are included in the model +Now that the dynamics of the model is tuned and the disturbances included in the model, we can perform simulation of experiments. -We can perform simulation of experiments. +We first do a simulation where the nano-hexapod is considered to be a solid-body to estimate the sample's motion that we have without an control. -https://tdehaeze.github.io/nass-simscape/experiments.html +An animation of the obtained motion is shown in Figure [[fig:open_loop_sim]]. +A zoom in the micro-meter ranger on the sample's location is shown in Figure [[fig:open_loop_sim_zoom]]. -[[fig:exp_scans_rz_dist]] +Two frames are displayed: +- a non-rotating frame that corresponds to the wanted position of the sample. + Note that here this frame is moving with the granite. +- a rotating frame that corresponds to the actual pose of the sample + +#+name: fig:open_loop_sim +#+caption: Tomography Experiment using the Simscape Model +[[file:figs/open_loop_sim.gif]] + + +#+name: fig:open_loop_sim_zoom +#+caption: Tomography Experiment using the Simscape Model - Zoom on the sample's position (the full vertical scale is $\approx 10 \mu m$) +[[file:figs/open_loop_sim_zoom.gif]] + +The position error of the sample with respect to the granite are shown in Figure [[fig:exp_scans_rz_dist]]. +It is shown that the X-Y-Z position errors are in the micro-meter range. + +For the rotation around X and Y, the errors are quite small. +This is explained by the fact that no torque disturbances is considered in the model. + +For the vertical rotation, this is due to the fact that we suppose perfect rotation of the Spindle, and anyway, no measurement of the sample with respect to the granite is made by the interferometers. #+name: fig:exp_scans_rz_dist #+caption: Position error of the Sample with respect to the granite during a Tomography Experiment with included disturbances @@ -692,10 +745,14 @@ https://tdehaeze.github.io/nass-simscape/experiments.html ** Conclusion #+begin_important -Possible to study many effects. -Extraction of transfer function like $G$ and $G_d$. +The multi-body model developed using Simscape is shown to be sufficiently close to the micro-station dynamics. -Simulation of experiments to validate performance. +It makes possible to: +- study many effects such as the change of dynamics due to the rotation, the sample mass, etc. +- extract transfer function like $G$ and $G_d$ +- simulate experiments to validate performance + +This model will be used in the next sections to help the design of the nano-hexapod, to develop the robust control architecture and to perform simulation in order to validate. #+end_important * Optimal Nano-Hexapod Design @@ -775,9 +832,11 @@ https://tdehaeze.github.io/nass-simscape/optimal_stiffness_control.html ** Simulation of Tomography Experiments <> -- Make several animations - - [ ] One of a tomography experiment where we see all the station rotating - - [ ] A zoom on at the nano-meter level to see how the wanted position is moving +#+name: fig:closed_loop_sim_zoom +#+caption: Figure caption +[[file:figs/closed_loop_sim_zoom.gif]] + + ** Conclusion * Further notes