diff --git a/disturbances/index.html b/disturbances/index.html index c1ee126..8e63257 100644 --- a/disturbances/index.html +++ b/disturbances/index.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Identification of the disturbances @@ -280,12 +280,13 @@ for the JavaScript code in this tag.

Table of Contents

@@ -295,7 +296,7 @@ The goal here is to extract the Power Spectral Density of the sources of perturb

-The sources of perturbations are (schematically shown in figure 1): +The sources of perturbations are (schematically shown in figure 1):

-Because we cannot measure directly the perturbation forces, we have the measure the effect of those perturbations on the system (in terms of velocity for instance using geophones, \(D\) on figure 1) and then, using a model, compute the forces that induced such velocity. +Because we cannot measure directly the perturbation forces, we have the measure the effect of those perturbations on the system (in terms of velocity for instance using geophones, \(D\) on figure 1) and then, using a model, compute the forces that induced such velocity.

-
+

uniaxial-model-micro-station.png

Figure 1: Schematic of the Micro Station and the sources of disturbance

@@ -320,18 +321,18 @@ Because we cannot measure directly the perturbation forces, we have the measure This file is divided in the following sections:

-
-

1 Identification

+
+

1 Identification

- +

@@ -372,15 +373,15 @@ G.OutputName = {

-
-

2 Sensitivity to Disturbances

+
+

2 Sensitivity to Disturbances

- +

-
+

sensitivity_dist_gm.png

Figure 2: Sensitivity to Ground Motion (png, pdf)

@@ -388,7 +389,7 @@ G.OutputName = { +

sensitivity_dist_fty.png

Figure 3: Sensitivity to vertical forces applied by the Ty stage (png, pdf)

@@ -396,7 +397,7 @@ G.OutputName = { +

sensitivity_dist_frz.png

Figure 4: Sensitivity to vertical forces applied by the Rz stage (png, pdf)

@@ -404,11 +405,11 @@ G.OutputName = {
-
-

3 Power Spectral Density of the effect of the disturbances

+
+

3 Power Spectral Density of the effect of the disturbances

- + The PSD of the relative velocity between the hexapod and the marble in \([(m/s)^2/Hz]\) are loaded for the following sources of disturbance:

    @@ -437,15 +438,15 @@ We now compute the relative velocity between the hexapod and the granite due to

-The Power Spectral Density of the relative motion/velocity of the hexapod with respect to the granite are shown in figures 5 and 6. +The Power Spectral Density of the relative motion/velocity of the hexapod with respect to the granite are shown in figures 5 and 6.

-The Cumulative Amplitude Spectrum of the relative motion is shown in figure 7. +The Cumulative Amplitude Spectrum of the relative motion is shown in figure 7.

-
+

dist_effect_relative_velocity.png

Figure 5: Amplitude Spectral Density of the relative velocity of the hexapod with respect to the granite due to different sources of perturbation (png, pdf)

@@ -453,14 +454,14 @@ The Cumulative Amplitude Spectrum of the relative motion is shown in figure + -
+

dist_effect_relative_motion_cas.png

Figure 7: Cumulative Amplitude Spectrum of the relative motion due to different sources of perturbation (png, pdf)

@@ -468,15 +469,15 @@ The Cumulative Amplitude Spectrum of the relative motion is shown in figure
-
-

4 Compute the Power Spectral Density of the disturbance force

+
+

4 Compute the Power Spectral Density of the disturbance force

- +

-Now, from the extracted transfer functions from the disturbance force to the relative motion of the hexapod with respect to the granite (section 2) and from the measured PSD of the relative motion (section 3), we can compute the PSD of the disturbance force. +Now, from the extracted transfer functions from the disturbance force to the relative motion of the hexapod with respect to the granite (section 2) and from the measured PSD of the relative motion (section 3), we can compute the PSD of the disturbance force.

@@ -486,7 +487,7 @@ tyz.psd_f = tyz.pxz_ty_r./abs +

dist_force_psd.png

Figure 8: Amplitude Spectral Density of the disturbance force (png, pdf)

@@ -494,11 +495,11 @@ tyz.psd_f = tyz.pxz_ty_r./abs -

5 Noise Budget

+
+

5 Noise Budget

- +

@@ -507,7 +508,7 @@ We should verify that this is coherent with the measurements.

-
+

psd_effect_dist_verif.png

Figure 9: Computed Effect of the disturbances on the relative displacement hexapod/granite (png, pdf)

@@ -515,7 +516,7 @@ We should verify that this is coherent with the measurements. -
+

cas_computed_relative_displacement.png

Figure 10: CAS of the total Relative Displacement due to all considered sources of perturbation (png, pdf)

@@ -523,20 +524,58 @@ We should verify that this is coherent with the measurements.
-
-

6 Save

+
+

6 Approximation

+We approximate the PSD of the disturbance with the following transfer functions. +

+
+
G_ty = 0.1*(s+634.3)*(s+283.7)/((s+2*pi)*(s+2*pi));
+G_rz = 0.5*(s+418.8)*(s+36.51)*(s^2 + 110.9*s + 3.375e04)/((s+0.7324)*(s+0.546)*(s^2 + 0.6462*s + 2.391e04));
+G_gm = 0.002*(s^2 + 3.169*s + 27.74)/(s*(s+32.73)*(s+8.829)*(s+7.983)^2);
+
+
+ +

+We compute the effect of these approximate disturbances on \(D\). +

+ +
+

estimate_spectral_density_disturbances.png +

+

Figure 11: Estimated spectral density of the disturbances (png, pdf)

+
+ + +
+

comp_estimation_cas_disturbances.png +

+

Figure 12: Comparison of the CAS of the disturbances with the approximate ones (png, pdf)

+
+
+
+ +
+

7 Save

+
+

The PSD of the disturbance force are now saved for further noise budgeting when control is applied (the mat file is accessible here).

dist_f = struct();
+
 dist_f.f = gm.f; % Frequency Vector [Hz]
+
 dist_f.psd_gm = gm.psd_gm; % Power Spectral Density of the Ground Motion [m^2/Hz]
 dist_f.psd_ty = tyz.psd_f; % Power Spectral Density of the force induced by the Ty stage in the Z direction [N^2/Hz]
 dist_f.psd_rz = rz.psd_f; % Power Spectral Density of the force induced by the Rz stage in the Z direction [N^2/Hz]
 
+dist_f.G_gm = G_ty;
+dist_f.G_ty = G_rz;
+dist_f.G_rz = G_gm;
+
 save('./disturbances/mat/dist_psd.mat', 'dist_f');
 
@@ -545,7 +584,7 @@ save(

Author: Dehaeze Thomas

-

Created: 2019-11-04 lun. 15:56

+

Created: 2019-11-22 ven. 14:56

Validate

diff --git a/disturbances/index.org b/disturbances/index.org index 1f5537b..7a565bd 100644 --- a/disturbances/index.org +++ b/disturbances/index.org @@ -487,15 +487,102 @@ We should verify that this is coherent with the measurements. #+CAPTION: CAS of the total Relative Displacement due to all considered sources of perturbation ([[./figs/cas_computed_relative_displacement.png][png]], [[./figs/cas_computed_relative_displacement.pdf][pdf]]) [[file:figs/cas_computed_relative_displacement.png]] +* Approximation +We approximate the PSD of the disturbance with the following transfer functions. +#+begin_src matlab + G_ty = 0.1*(s+634.3)*(s+283.7)/((s+2*pi)*(s+2*pi)); + G_rz = 0.5*(s+418.8)*(s+36.51)*(s^2 + 110.9*s + 3.375e04)/((s+0.7324)*(s+0.546)*(s^2 + 0.6462*s + 2.391e04)); + G_gm = 0.002*(s^2 + 3.169*s + 27.74)/(s*(s+32.73)*(s+8.829)*(s+7.983)^2); +#+end_src + +We compute the effect of these approximate disturbances on $D$. +#+begin_src matlab :exports none + % Power Spectral Density of the relative Displacement + psd_gm_s = abs(squeeze(freqresp(G_gm*G('Vm', 'Dw')/s, dist_f.f, 'Hz'))).^2; + psd_ty_s = abs(squeeze(freqresp(G_ty*G('Vm', 'Fty')/s, dist_f.f, 'Hz'))).^2; + psd_rz_s = abs(squeeze(freqresp(G_rz*G('Vm', 'Frz')/s, dist_f.f, 'Hz'))).^2; +#+end_src + +#+begin_src matlab :exports none + figure; + ax1 = subplot(1, 2, 1); + hold on; + set(gca,'ColorOrderIndex',2); + plot(dist_f.f, sqrt(psd_ty_d), 'DisplayName', 'F - Ty'); + plot(dist_f.f, sqrt(psd_rz_d), 'DisplayName', 'F - Rz'); + set(gca,'ColorOrderIndex',2); + plot(dist_f.f, sqrt(psd_ty_s), '--', 'HandleVisibility', 'off'); + plot(dist_f.f, sqrt(psd_rz_s), '--', 'HandleVisibility', 'off'); + hold off; + set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); + xlabel('Frequency [Hz]'); ylabel('ASD of the disturbance force $\left[\frac{F}{\sqrt{Hz}}\right]$') + legend('Location', 'southwest'); + xlim([2, 500]); + + ax2 = subplot(1, 2, 2); + hold on; + plot(dist_f.f, sqrt(psd_gm_d), 'DisplayName', 'D - Gm'); + set(gca,'ColorOrderIndex',1); + plot(dist_f.f, sqrt(psd_gm_s), '--', 'HandleVisibility', 'off'); + hold off; + set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); + xlabel('Frequency [Hz]'); ylabel('ASD of the ground displacement $\left[\frac{m}{\sqrt{Hz}}\right]$') + legend('Location', 'southwest'); + xlim([2, 500]); +#+end_src + +#+HEADER: :tangle no :exports results :results none :noweb yes +#+begin_src matlab :var filepath="figs/estimate_spectral_density_disturbances.pdf" :var figsize="full-tall" :post pdf2svg(file=*this*, ext="png") + <> +#+end_src + +#+NAME: fig:estimate_spectral_density_disturbances +#+CAPTION: Estimated spectral density of the disturbances ([[./figs/estimate_spectral_density_disturbances.png][png]], [[./figs/estimate_spectral_density_disturbances.pdf][pdf]]) +[[file:figs/estimate_spectral_density_disturbances.png]] + +#+begin_src matlab :exports none + figure; + hold on; + plot(dist_f.f, flip(sqrt(-cumtrapz(flip(dist_f.f), flip(psd_gm_d)))), 'DisplayName', 'Gm'); + plot(dist_f.f, flip(sqrt(-cumtrapz(flip(dist_f.f), flip(psd_ty_d)))), 'DisplayName', 'Ty'); + plot(dist_f.f, flip(sqrt(-cumtrapz(flip(dist_f.f), flip(psd_rz_d)))), 'DisplayName', 'Rz'); + plot(dist_f.f, flip(sqrt(-cumtrapz(flip(dist_f.f), flip(psd_gm_d + psd_ty_d + psd_rz_d)))), 'k-', 'DisplayName', 'tot'); + set(gca,'ColorOrderIndex',1); + plot(dist_f.f, flip(sqrt(-cumtrapz(flip(dist_f.f), flip(psd_gm_s)))), '--', 'HandleVisibility', 'off'); + plot(dist_f.f, flip(sqrt(-cumtrapz(flip(dist_f.f), flip(psd_ty_s)))), '--', 'HandleVisibility', 'off'); + plot(dist_f.f, flip(sqrt(-cumtrapz(flip(dist_f.f), flip(psd_rz_s)))), '--', 'HandleVisibility', 'off'); + plot(dist_f.f, flip(sqrt(-cumtrapz(flip(dist_f.f), flip(psd_gm_s + psd_ty_s + psd_rz_s)))), 'k--', 'HandleVisibility', 'off'); + hold off; + set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); + xlabel('Frequency [Hz]'); ylabel('Cumulative Amplitude Spectrum [m]') + legend('location', 'northeast'); + xlim([2, 500]); ylim([1e-11, 1e-6]); +#+end_src + +#+HEADER: :tangle no :exports results :results none :noweb yes +#+begin_src matlab :var filepath="figs/comp_estimation_cas_disturbances.pdf" :var figsize="full-tall" :post pdf2svg(file=*this*, ext="png") + <> +#+end_src + +#+NAME: fig:comp_estimation_cas_disturbances +#+CAPTION: Comparison of the CAS of the disturbances with the approximate ones ([[./figs/comp_estimation_cas_disturbances.png][png]], [[./figs/comp_estimation_cas_disturbances.pdf][pdf]]) +[[file:figs/comp_estimation_cas_disturbances.png]] + * Save The PSD of the disturbance force are now saved for further noise budgeting when control is applied (the mat file is accessible [[file:mat/dist_psd.mat][here]]). #+begin_src matlab dist_f = struct(); + dist_f.f = gm.f; % Frequency Vector [Hz] + dist_f.psd_gm = gm.psd_gm; % Power Spectral Density of the Ground Motion [m^2/Hz] dist_f.psd_ty = tyz.psd_f; % Power Spectral Density of the force induced by the Ty stage in the Z direction [N^2/Hz] dist_f.psd_rz = rz.psd_f; % Power Spectral Density of the force induced by the Rz stage in the Z direction [N^2/Hz] + dist_f.G_gm = G_ty; + dist_f.G_ty = G_rz; + dist_f.G_rz = G_gm; + save('./disturbances/mat/dist_psd.mat', 'dist_f'); #+end_src diff --git a/disturbances/mat/dist_psd.mat b/disturbances/mat/dist_psd.mat index 64412d6..783d4a4 100644 Binary files a/disturbances/mat/dist_psd.mat and b/disturbances/mat/dist_psd.mat differ diff --git a/figs/cas_computed_relative_displacement.png b/figs/cas_computed_relative_displacement.png index 2832ae4..093c605 100644 Binary files a/figs/cas_computed_relative_displacement.png and b/figs/cas_computed_relative_displacement.png differ diff --git a/figs/comp_estimation_cas_disturbances.png b/figs/comp_estimation_cas_disturbances.png new file mode 100644 index 0000000..9ccc198 Binary files /dev/null and b/figs/comp_estimation_cas_disturbances.png differ diff --git a/figs/dist_effect_relative_motion_cas.png b/figs/dist_effect_relative_motion_cas.png index b30e2bb..84edfac 100644 Binary files a/figs/dist_effect_relative_motion_cas.png and b/figs/dist_effect_relative_motion_cas.png differ diff --git a/figs/dist_force_psd.png b/figs/dist_force_psd.png index 3312296..4101a7b 100644 Binary files a/figs/dist_force_psd.png and b/figs/dist_force_psd.png differ diff --git a/figs/estimate_spectral_density_disturbances.png b/figs/estimate_spectral_density_disturbances.png new file mode 100644 index 0000000..32581f8 Binary files /dev/null and b/figs/estimate_spectral_density_disturbances.png differ diff --git a/figs/psd_effect_dist_verif.png b/figs/psd_effect_dist_verif.png index 0716c31..1a02de8 100644 Binary files a/figs/psd_effect_dist_verif.png and b/figs/psd_effect_dist_verif.png differ diff --git a/figs/sensitivity_dist_frz.png b/figs/sensitivity_dist_frz.png index 787a40f..9cc2a23 100644 Binary files a/figs/sensitivity_dist_frz.png and b/figs/sensitivity_dist_frz.png differ diff --git a/figs/sensitivity_dist_fty.png b/figs/sensitivity_dist_fty.png index 6fc9d04..7363246 100644 Binary files a/figs/sensitivity_dist_fty.png and b/figs/sensitivity_dist_fty.png differ diff --git a/figs/sensitivity_dist_gm.png b/figs/sensitivity_dist_gm.png index 03bcf1c..c9151f5 100644 Binary files a/figs/sensitivity_dist_gm.png and b/figs/sensitivity_dist_gm.png differ diff --git a/figs/uniaxial-psd-dist.png b/figs/uniaxial-psd-dist.png index 235ca94..9b696df 100644 Binary files a/figs/uniaxial-psd-dist.png and b/figs/uniaxial-psd-dist.png differ