UP | HOME

Unidirectional Model - Report

Table of Contents


This report is also available as a pdf.


(let ((org-export-before-parsing-hook (lambda (backend)
                                        (let* ((data (org-element-parse-buffer))
                                               (headline-labels (append
                                                                 (org-element-map data 'headline
                                                                   (lambda (hl)
                                                                     (when (org-element-property :CUSTOM_ID hl)
                                                                       (org-element-property :CUSTOM_ID hl))))
                                                                 (org-element-map data 'link
                                                                   (lambda (lnk)
                                                                     (when
                                                                         (and (string= "label" (org-element-property :type lnk))
                                                                              (eq 'headline (car (org-element-property :parent lnk))))
                                                                       (org-element-property :path lnk))))))
                                               (table-labels (append
                                                              (org-element-map data 'table
                                                                (lambda (tbl)
                                                                  (when (org-element-property :name tbl)
                                                                    (org-element-property :name tbl))))
                                                              (org-element-map data 'link
                                                                (lambda (lnk)
                                                                  (when (and (string= "label" (org-element-property :type lnk))
                                                                             (eq 'table (car (org-element-property :parent lnk))))
                                                                    (org-element-property :path lnk)))))))
                                          ;; now we need to map over these and replace them
                                          (mapc (lambda (label)
                                                  (goto-char (point-min))
                                                  (while (re-search-forward (format "ref:%s" label) nil t)
                                                    (replace-match (format "[[%s]]" label))))
                                                headline-labels)
                                          (mapc (lambda (label)
                                                  (goto-char (point-min))
                                                  (while (re-search-forward (format "label:%s" label) nil t)
                                                    (replace-match (format "<<%s>>" label))))
                                                headline-labels)
                                          (mapc (lambda (label)
                                                  (goto-char (point-min))
                                                  (while (re-search-forward (format "ref:%s" label) nil t)
                                                    (replace-match (format "[[%s]]" label))))
                                                table-labels)))))

  (org-open-file (org-html-export-to-html)))

The report is organized as follow:

1. Micro Station Model

In this section, a uni-axial model of the micro-station is tuned in order to match measurements made on the micro-station

micro_station_first_meas_dynamics.jpg

Figure 1: Experimental Setup for the first dynamical measurements on the Micro-Station. Geophones are fixed to the micro-station, and the granite as well as the micro-hexapod’s top platform are impact with an instrumented hammer

1.1. Measured dynamics

The measurement setup is schematically shown in Figure 2 where:

  • Two hammer hits are performed, one on the Granite, and one on the micro-hexapod’s top platform
  • The inertial motion of the granite and the micro-hexapod’s top platform are measured using geophones.

From the forces applied by the instrumented hammer and the responses of the geophones, the following frequency response functions can be computed:

  • from \(F_h\) to \(d_h\) (i.e. the compliance of the micro-station)
  • from \(F_g\) to \(d_h\) (or from \(F_h\) to \(d_g\))
  • from \(F_g\) to \(d_g\)

micro_station_meas_dynamics_schematic.png

Figure 2: Measurement setup - Schematic

Due to the bad coherence at low frequency, the frequency response functions are only shown between 20 and 200Hz (Figure 3).

%% Load measured FRF
load('meas_microstation_frf.mat');

measured_frf_vertical.png

Figure 3: Measured Frequency Response Functions in the vertical direction

1.2. Uniaxial Model

The uni-axial model of the micro-station is shown in Figure 5, with:

  • Disturbances:
    • \(x_f\): Floor motion
    • \(f_t\): Stage vibrations
  • Hammer impacts: \(F_h\) and \(F_g\).
  • Geophones: \(x_h\) and \(x_g\)

uniaxial-model-micro-station.png

Figure 4: Uni-axial model of the micro-station

Masses are estimated from the CAD.

%% Parameters - Mass
mh = 15;   % Micro Hexapod [kg]
mt = 1200; % Ty + Ry + Rz [kg]
mg = 2500; % Granite [kg]

And stiffnesses from the data-sheet of stage manufacturers.

%% Parameters - Stiffnesses
kh = 6.11e+07; % [N/m]
kt = 5.19e+08; % [N/m]
kg = 9.50e+08; % [N/m]

1.3. Comparison of the model and measurements

The comparison between the measurements and the model is done in Figure 5.

Ad the model is simplistic, the goal is not to match exactly the measurement but to have a first approximation. More accurate models will be developed and tuned later on.

comp_frf_meas_model.png

Figure 5: Comparison of the measured FRF and identified ones from the uni-axial model

2. Nano-Hexapod Model

A model of the nano-hexapod and sample is now added on top of the uni-axial model of the micro-station (Figure 6).

Disturbances (shown in red) are:

  • \(f_s\): direct forces applied to the sample (for instance cable forces)
  • \(f_t\): disturbances coming from the imperfect stage scanning performances
  • \(x_f\): floor motion

The control signal is the force applied by the nano-hexapod \(f\) and the measurement is the relative motion between the sample and the granite \(d\).

uniaxial-model-micro-station-nass.png

Figure 6: Uni-axial model of the micro-station with added nano-hexapod and sample

2.1. Nano-Hexapod Parameters

The parameters for the nano-hexapod and sample are:

  • \(m_s\) the sample mass that can vary from 1kg up to 50kg
  • \(m_n\) the nano-hexapod mass which is set to 15kg
  • \(k_n\) the nano-hexapod stiffness, which can vary depending on the chosen architecture/technology

As a first example, let’s choose a nano-hexapod stiffness of \(10\,N/\mu m\) and a sample mass of 10kg.

%% Nano-Hexapod Parameters
mn = 15; % [kg]
kn = 1e7; % [N/m]
cn = 2*0.01*sqrt(mn*kn); % [N/(m/s)]

%% Sample Mass
ms = 10; % [kg]

2.2. Obtained Dynamics

The sensitivity to disturbances (i.e. \(x_f\), \(f_t\) and \(f_s\)) are shown in Figure 7. The plant (i.e. the transfer function from actuator force \(f\) to measured displacement \(d\)) is shown in Figure 8.

uniaxial_sensitivity_dist_first_params.png

Figure 7: Sensitivity to disturbances

uniaxial_plant_first_params.png

Figure 8: Bode Plot of the transfer function from actuator forces to measured displacement by the metrology

3. Disturbance Identification

In order to measure disturbances, two geophones are used, on located on the floor and on on the micro-hexapod’s top platform (see Figure 9).

The geophone on the floor is used to measured the floor motion \(x_f\) while the geophone on the micro-hexapod is used to measure vibrations introduced by scanning of the \(T_y\) stage and \(R_z\) stage.

micro_station_meas_disturbances.png

Figure 9: Disturbance measurement setup - Schematic

The voltage generated by each geophone is amplified using a voltage amplifier (gain of 60dB) before going to the ADC.

3.1. Ground Motion

The geophone fixed to the floor to measure the floor motion.

%% Load floor motion data
load('ground_motion_measurement.mat', 't', 'V');

The sensitivity of the geophone as well as the gain of the voltage amplifier are taken into account to reconstruct the floor displacement.

%% Sensitivity of the geophone
S0 = 88; % Sensitivity [V/(m/s)]
f0 = 2; % Cut-off frequency [Hz]

S = S0*(s/2/pi/f0)/(1+s/2/pi/f0); % Geophone's transfer function [V/(m/s)]

%% Gain of the voltage amplifier
G0_db = 60; % [dB]
G0 = 10^(G0_db/20); % [abs]

%% Transfer function from measured voltage to displacement
G_geo = 1/S/G0/s; % [m/V]

The PSD \(S_{V_f}\) of the measured voltage \(V_f\) is computed.

%% Compute measured voltage PSD
Fs = 1/(t(2)-t(1)); % Sampling Frequency [Hz]
win = hanning(ceil(2*Fs)); % Hanning window

[psd_V, f] = pwelch(V, win, [], [], Fs); % [V^2/Hz]

The PSD of the corresponding displacement can be computed as follows:

\begin{equation} S_{x_f}(\omega) = \frac{S_{V_f}(\omega)}{|S_{\text{geo}}(j\omega)| \cdot G_{\text{amp}} \cdot \omega} \end{equation}

with:

  • \(S_{\text{geo}}\) the sensitivity of the Geophone in \([Vs/m]\)
  • \(G_{\text{amp}}\) the gain of the voltage amplifier
  • \(\omega\) is here to integrate and have the displacement instead of the velocity
%% Ground Motion ASD
psd_xf = psd_V.*abs(squeeze(freqresp(G_geo, f, 'Hz'))).^2; % [m^2/Hz]

The amplitude spectral density \(\Gamma_{x_f}\) of the measured displacement \(x_f\) is shown in Figure 10.

asd_floor_motion_id31.png

Figure 10: Measured Amplitude Spectral Density of the Floor motion on ID31

3.2. Stage Vibration

During Spindle rotation (here at 6rpm), the granite velocity and micro-hexapod’s top platform velocity are measured with the geophones.

%% Measured velocity of granite and hexapod during spindle rotation
load('meas_spindle_on.mat', 't', 'vg', 'vh');

The Power Spectral Density of the relative velocity between the hexapod and the granite is computed.

%% Compute Power Spectral Density of the relative velocity between granite and hexapod during spindle rotation
Fs = 1/(t(2)-t(1)); % Sampling Frequency [Hz]
win = hanning(ceil(2*Fs)); % Hanning window

[psd_vft, f] = pwelch(vh-vg, win, [], [], Fs); % [(m/s)^2/Hz]

It is then integrated to obtain the Amplitude Spectral Density of the relative motion (Figure 11).

asd_vibration_spindle_rotation.png

Figure 11: Measured Amplitude Spectral Density of the relative motion between the granite and the micro-hexapod’s top platform during Spindle rotating

In order to compute the equivalent disturbance force \(f_t\) that induces such motion, the transfer function from \(f_t\) to the relative motion of the hexapod’s top platform and the granite is extracted from the model. The power spectral density \(\Gamma_{f_{t}}\) of the disturbance force can be computed as follows:

\begin{equation} \Gamma_{f_{t}}(\omega) = \frac{\Gamma_{v_{t}}(\omega)}{|G_{\text{model}}(j\omega)|^2} \end{equation}

with:

  • \(\Gamma_{v_{t}}\) the measured power spectral density of the relative motion between the micro-hexapod’s top platform and the granite during the spindle’s rotation
  • \(G_{\text{model}}\) the transfer function (extracted from the uniaxial model) from \(f_t\) to the relative motion between the micro-hexapod’s top platform and the granite
%% Power Spectral Density of the equivalent force ft
psd_ft = (psd_vft./(2*pi*f).^2)./abs(squeeze(freqresp(G('Dh', 'ft') - G('Dg', 'ft'), f, 'Hz'))).^2;

The obtained amplitude spectral density of the disturbance force \(f_t\) is shown in Figure 12.

asd_disturbance_force.png

Figure 12: Estimated disturbance force ft from measurement and uniaxial model

4. Open-Loop Dynamic Noise Budgeting

Now that we have a model of the NASS and an estimation of the power spectral density of the disturbances, it is possible to perform an open-loop dynamic noise budgeting.

4.1. Sensitivity to disturbances

From the Uni-axial model, the transfer function from the disturbances (\(f_s\), \(x_f\) and \(f_t\)) to the displacement \(d\) are computed.

This is done for two extreme sample masses \(m_s = 1\,\text{kg}\) and \(m_s = 50\,\text{kg}\) and three nano-hexapod stiffnesses:

  • \(k_n = 0.01\,N/\mu m\) that could represent a voice coil actuator with soft flexible guiding
  • \(k_n = 1\,N/\mu m\) that could represent a voice coil actuator with a stiff flexible guiding or a mechanically amplified piezoelectric actuator
  • \(k_n = 100\,N/\mu m\) that could represent a stiff piezoelectric stack actuator

The obtained sensitivity to disturbances for the three nano-hexapod stiffnesses are shown in Figure 13 for the light sample (same conclusions can be drawn with the heavy one).

From Figure 13, following can be concluded for the soft nano-hexapod:

  • It is more sensitive to forces applied on the sample (cable forces for instance), which is expected due to the lower stiffness
  • Between the suspension mode of the nano-hexapod (here at 5Hz) and the first mode of the micro-station (here at 70Hz), the disturbances induced by the stage vibrations are filtered out.
  • Above the suspension mode of the nano-hexapod, the sample’s motion is unaffected by the floor motion, and therefore the sensitivity to floor motion is almost \(1\).

sensitivity_disturbances_nano_hexpod_stiffnesses.png

Figure 13: Sensitivity to disturbances for three different nano-hexpod stiffnesses

4.2. Open-Loop Dynamic Noise Budgeting

Now, the power spectral density of the disturbances is taken into account to estimate the residual motion \(d\) in each case.

The Cumulative Amplitude Spectrum of the relative motion \(d\) due to both the floor motion \(x_f\) and the stage vibrations \(f_t\) are shown in Figure 14 for the three nano-hexapod stiffnesses.

It is shown that the effect of the floor motion is much less than the stage vibrations, except for the soft nano-hexapod below 5Hz.

cas_d_disturbances_stiffnesses.png

Figure 14: Cumulative Amplitude Spectrum of the relative motion d, due to both the floor motion and the stage vibrations (light sample)

The total cumulative amplitude spectrum for the three nano-hexapod stiffnesses and for the two sample’s masses are shown in Figure 15. The conclusion is that the sample’s mass has little effect on the cumulative amplitude spectrum of the relative motion \(d\).

cas_d_disturbances_payload_masses.png

Figure 15: Cumulative Amplitude Spectrum of the relative motion d due to all disturbances, for two sample masses

The conclusion is that in order to have a closed-loop residual vibration \(d \approx 20\,nm\text{ rms}\), if a simple feedback controller is used, the required closed-loop bandwidth would be:

  • \(\approx 10\,\text{Hz}\) for the soft nano-hexapod (\(k_n = 0.01\,N/\mu m\))
  • \(\approx 50\,\text{Hz}\) for the relatively stiff nano-hexapod (\(k_n = 1\,N/\mu m\))
  • \(\approx 100\,\text{Hz}\) for the stiff nano-hexapod (\(k_n = 100\,N/\mu m\))

5. Active Damping

uniaxial_active_damping_strategies.png

Figure 16: Three active damping strategies: Direct Velocity Feedback (DVF) using a geophone, Integral Force Feedback (IFF) using a force sensor, and Relative Motion Control (RMC) using a relative displacement sensor

5.1. Plant Dynamics

The plant dynamics for all three active damping techniques are shown in Figure 17.

All have alternating poles and zeros.

uniaxial_plant_active_damping_techniques.png

Figure 17: Plant dynamics for the three active damping techniques

5.2. Achievable Damping

Controller used for the three active damping techniques are:

\begin{align} K_{\text{IFF}}(s) &= \frac{g_{\text{IFF}}}{s} \\ K_{\text{RMC}}(s) &= g_{\text{RMC}} s \\ K_{\text{DVF}}(s) &= g_{\text{DVF}} \end{align}

It is shown in the Root Locus in Figure 18 that all three active damping approach can lead to critical damping.

uniaxial_root_locus_damping_techniques.png

Figure 18: Root Locus for the three damping techniques

5.3. Change of sensitivity to disturbances

The sensitivity to disturbances (\(f_s\), \(f_t\) and \(x_f\)) for all three active damping techniques are compared in Figure 19.

Conclusions from Figure 19 are:

  • IFF degrades the sensitivity to direct forces on the sample (i.e. the compliance) below the resonance of the nano-hexapod
  • RMC degrades the sensitivity to stage vibrations around the nano-hexapod’s resonance as compared to the other two methods
  • both IFF and DVF degrades the sensitivity to floor motion below the resonance of the nano-hexapod

uniaxial_sensitivity_dist_active_damping.png

Figure 19: Change of sensitivity to disturbance with all three active damping strategies

5.4. Noise Budgeting after Active Damping

Cumulative Amplitude Spectrum of the distance \(d\) with all three active damping techniques are compared in Figure 20. All three active damping methods are giving similar results.

Active Damping helps to lower the vibrations and less bandwidth is required for the position controller.

uniaxial_cas_active_damping.png

Figure 20: Cumulative Amplitude Spectrum of the distance \(d\) with all three active damping techniques

6. Position Feedback Controller

  • [X] Explain the HAC-LAC control strategy
  • [ ] Show the plant for the three stiffnesses
  • [ ] Estimate the required bandwidth to attain the specifications

The High Authority Control - Low Authority Control (HAC-LAC) architecture is shown in Figure 21. It corresponds to a two step control strategy:

  • First, an active damping controller \(\bm{K}_{\textsc{LAC}}\) is implemented (see Section sec:uniaxial_active_damping). It allows to reduce the vibration level, and it also makes the damped plant (transfer function from \(u^{\prime}\) to \(y\)) easier to control than the undamped plant (transfer function from \(u\) to \(y\)).
  • Then, a position controller \(K_{\textsc{HAC}}\) is implemented.

uniaxial_hac_lac_architecture.png

Figure 21: High Authority Control - Low Authority Control (HAC-LAC) architecture

6.1. Plant Dynamics

Author: Dehaeze Thomas

Created: 2023-02-14 Tue 13:19