Work suspension table part
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_compliance_table.pdf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_compliance_table.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 16 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_mode_shapes_rigid_table.gif
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 4.5 MiB  | 
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_mode_shapes_rigid_table.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 187 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_suspended_table.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.3 MiB  | 
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_suspended_table_cad.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 135 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_suspended_table_simscape.pdf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_suspended_table_simscape.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 10 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_table_flexible_mode_1.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 30 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_table_flexible_mode_2.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 33 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								figs/test_nhexa_table_flexible_mode_3.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 33 KiB  | 
@@ -105,6 +105,9 @@ Add these documents:
 | 
			
		||||
- [X] [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-vibration-table/vibration-table.org][test-bench-vibration-table]]
 | 
			
		||||
- [ ] *Use corrected APA parameters in the initialization script*
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Suspended table EPDM: ID00/test_bench/table_dyn
 | 
			
		||||
 | 
			
		||||
*Goal of this test bench*:
 | 
			
		||||
- Properly mount the nano-hexapod
 | 
			
		||||
- Verify all is working
 | 
			
		||||
@@ -141,6 +144,8 @@ Maybe the rest is not so interesting here as it will be presented again in the n
 | 
			
		||||
- [ ] Modes of the encoder supports
 | 
			
		||||
- [ ] ...
 | 
			
		||||
 | 
			
		||||
** TODO [#C] Remove un-used matlab scripts and src files
 | 
			
		||||
 | 
			
		||||
** TODO [#B] Make nice subfigures for identified modes
 | 
			
		||||
SCHEDULED: <2024-10-26 Sat>
 | 
			
		||||
 | 
			
		||||
@@ -4111,94 +4116,24 @@ After all six struts are mounted, the mounting tool (Figure ref:fig:test_nhexa_c
 | 
			
		||||
<<sec:test_nhexa_table>>
 | 
			
		||||
** Introduction
 | 
			
		||||
 | 
			
		||||
# In EPDM: ID00/test_bench/table_dyn
 | 
			
		||||
When a dynamical system is fixed to a support (such as a granite or an optical table), its dynamics will couple to the support dynamics.
 | 
			
		||||
This may results in additional modes appearing in the system dynamics, which are difficult to predict and model.
 | 
			
		||||
Two prevent this issue, strategy adopted here is to mount the nano-hexapod on top a suspended table with low frequency suspension modes.
 | 
			
		||||
 | 
			
		||||
This document is divided as follows:
 | 
			
		||||
- Section ref:ssec:test_nhexa_table_setup: the experimental setup and all the instrumentation are described
 | 
			
		||||
- Section ref:ssec:test_nhexa_table_identification: the table dynamics is identified
 | 
			
		||||
- Section ref:ssec:test_nhexa_table_model: a Simscape model of the vibration table is developed and tuned from the measurements
 | 
			
		||||
In such a case, the modes of the suspended table are chosen to be at much lower frequency than those of the nano-hexapod such that they are well decoupled.
 | 
			
		||||
An other key advantage is that the suspension modes of the suspended table can be easily modelled using Simscape.
 | 
			
		||||
Therefore, the measured dynamics of the nano-hexapod on top of the suspended table can be compared to a simscape model representing the same experimental conditions.
 | 
			
		||||
The model of the Nano-Hexapod can thus be precisely tuned to match the measured dynamics.
 | 
			
		||||
 | 
			
		||||
** Experimental Setup
 | 
			
		||||
<<ssec:test_nhexa_table_setup>>
 | 
			
		||||
*** Introduction                                                    :ignore:
 | 
			
		||||
The developed suspended table is presented in Section ref:ssec:test_nhexa_table_setup.
 | 
			
		||||
The modal analysis of the table is done in ref:ssec:test_nhexa_table_identification.
 | 
			
		||||
Finally, the Simscape model representing the suspended table is tuned to match the measured modes (Section ref:ssec:test_nhexa_table_model).
 | 
			
		||||
 | 
			
		||||
- [ ] Redo the CAD view
 | 
			
		||||
** Matlab Init                                              :noexport:ignore:
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
%% test_nhexa_table.m
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
#+name: fig:vibration-table-cad-view
 | 
			
		||||
#+caption: CAD View of the vibration table
 | 
			
		||||
#+attr_latex: :width 0.8\linewidth
 | 
			
		||||
[[file:figs/vibration-table-cad-view.png]]
 | 
			
		||||
 | 
			
		||||
*** Suspended table
 | 
			
		||||
 | 
			
		||||
- Dimensions :: 450 mm x 450 mm x 60 mm
 | 
			
		||||
- Mass :: 21.3 kg (bot=7.8, top=7.6, mid=5.9kg)
 | 
			
		||||
- Interface plate :: 3.2kg
 | 
			
		||||
 | 
			
		||||
#+name: fig:compliance_optical_table
 | 
			
		||||
#+caption: Compliance of the B4545A optical table
 | 
			
		||||
#+attr_latex: :width 0.8\linewidth
 | 
			
		||||
[[file:figs/test_nhexa_compliance_table.png]]
 | 
			
		||||
 | 
			
		||||
If we include including the bottom interface plate:
 | 
			
		||||
- Total mass: 24.5 kg
 | 
			
		||||
- CoM: 42mm below Center of optical table
 | 
			
		||||
- Ix = 0.54, Iy = 0.54, Iz = 1.07 (with respect to CoM)
 | 
			
		||||
 | 
			
		||||
*** Springs
 | 
			
		||||
 | 
			
		||||
Helical compression spring
 | 
			
		||||
make of steel wire (52SiCrNi5) with rectangular cross section
 | 
			
		||||
SZ8005 20 x 044 from Steinel
 | 
			
		||||
L0 = 44mm
 | 
			
		||||
Spring rate = 17.8 N/mm
 | 
			
		||||
 | 
			
		||||
[[file:figs/test_nhexa_table_springs.jpg]]
 | 
			
		||||
 | 
			
		||||
** Identification of the table's response
 | 
			
		||||
<<ssec:test_nhexa_table_identification>>
 | 
			
		||||
 | 
			
		||||
(4x) 3D accelerometer [[https://www.pcbpiezotronics.fr/produit/accelerometres/356b18/][PCB 356B18]]
 | 
			
		||||
 | 
			
		||||
#+name: tab:list_modes
 | 
			
		||||
#+caption: List of the identified modes
 | 
			
		||||
#+attr_latex: :environment tabularx :width 0.5\linewidth :align ccX
 | 
			
		||||
#+attr_latex: :center t :booktabs t :float t
 | 
			
		||||
|   | Freq. [Hz] | Description   |
 | 
			
		||||
|---+------------+---------------|
 | 
			
		||||
| 1 |        1.3 | X-translation |
 | 
			
		||||
| 2 |        1.3 | Y-translation |
 | 
			
		||||
| 3 |       1.95 | Z-rotation    |
 | 
			
		||||
| 4 |       6.85 | Z-translation |
 | 
			
		||||
| 5 |        8.9 | Tilt          |
 | 
			
		||||
| 6 |        8.9 | Tilt          |
 | 
			
		||||
| 7 |        700 | Flexible Mode |
 | 
			
		||||
 | 
			
		||||
#+name: fig:test_nhexa_mode_shapes_rigid_table
 | 
			
		||||
#+caption: Mode shapes of the 6 suspension modes (from 1Hz to 9Hz)
 | 
			
		||||
#+attr_latex: :width \linewidth
 | 
			
		||||
[[file:figs/test_nhexa_mode_shapes_rigid_table.png]]
 | 
			
		||||
 | 
			
		||||
#+name: fig:ModeShapeHF1_crop
 | 
			
		||||
#+caption: First flexible mode of the table at 700Hz
 | 
			
		||||
#+attr_latex: :width 0.3\linewidth
 | 
			
		||||
[[file:figs/ModeShapeHF1_crop.gif]]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
** Simscape Model of the suspended table
 | 
			
		||||
:PROPERTIES:
 | 
			
		||||
:header-args:matlab+: :tangle matlab/simscape_model.m
 | 
			
		||||
:END:
 | 
			
		||||
<<ssec:test_nhexa_table_model>>
 | 
			
		||||
*** Introduction                                                    :ignore:
 | 
			
		||||
In this section, the Simscape model of the vibration table is described.
 | 
			
		||||
 | 
			
		||||
#+name: fig:simscape_vibration_table
 | 
			
		||||
#+caption: 3D representation of the simscape model
 | 
			
		||||
#+attr_latex: :width 0.8\linewidth
 | 
			
		||||
[[file:figs/simscape_vibration_table.png]]
 | 
			
		||||
 | 
			
		||||
*** Matlab Init                                            :noexport:ignore:
 | 
			
		||||
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
 | 
			
		||||
<<matlab-dir>>
 | 
			
		||||
#+end_src
 | 
			
		||||
@@ -4223,79 +4158,101 @@ In this section, the Simscape model of the vibration table is described.
 | 
			
		||||
<<m-init-other>>
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
*** Simscape Sub-systems
 | 
			
		||||
<<sec:simscape_parameters>>
 | 
			
		||||
** Experimental Setup
 | 
			
		||||
<<ssec:test_nhexa_table_setup>>
 | 
			
		||||
 | 
			
		||||
Parameters for sub-components of the simscape model are defined below.
 | 
			
		||||
The design of the suspended table is quite straightforward.
 | 
			
		||||
First, an optical table with high frequency flexible mode was selected[fn:5].
 | 
			
		||||
Then, four springs[fn:6] were selected with low enough spring rate such that the suspension modes are below 10Hz.
 | 
			
		||||
Finally, some interface elements were designed, and mechanical lateral mechanical stops were added (Figure ref:fig:test_nhexa_suspended_table_cad).
 | 
			
		||||
 | 
			
		||||
**** Springs
 | 
			
		||||
<<sec:simscape_springs>>
 | 
			
		||||
#+name: fig:test_nhexa_suspended_table_cad
 | 
			
		||||
#+caption: CAD View of the vibration table. Purple cylinders are representing the soft springs.
 | 
			
		||||
#+attr_latex: :width 0.7\linewidth
 | 
			
		||||
[[file:figs/test_nhexa_suspended_table_cad.jpg]]
 | 
			
		||||
 | 
			
		||||
The 4 springs supporting the suspended optical table are modelled with "bushing joints" having stiffness and damping in the x-y-z directions:
 | 
			
		||||
** Modal analysis of the suspended table
 | 
			
		||||
<<ssec:test_nhexa_table_identification>>
 | 
			
		||||
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
%% This parameters are defined in the Mask of the suspended table
 | 
			
		||||
% spring.kx = 0.5e3; % X- Stiffness [N/m]
 | 
			
		||||
% spring.cx = 15; % X- Damping [N/(m/s)]
 | 
			
		||||
In order to perform a modal analysis of the suspended table, a total of 15 3-axis accelerometers[fn:7] 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 next modes are flexible modes of the breadboard as shown in Figure ref:fig:test_nhexa_table_flexible_modes, and located above 700Hz.
 | 
			
		||||
 | 
			
		||||
% spring.ky = 0.5e3; % Y- Stiffness [N/m]
 | 
			
		||||
% spring.cy = 15; % Y- Damping [N/(m/s)]
 | 
			
		||||
#+attr_latex: :options [t]{0.45\linewidth}
 | 
			
		||||
#+begin_minipage
 | 
			
		||||
#+name: fig:test_nhexa_suspended_table
 | 
			
		||||
#+caption: Mounted suspended table. Only 1 or the 15 accelerometer is mounted on top
 | 
			
		||||
#+attr_latex: :width 0.99\linewidth :float nil
 | 
			
		||||
[[file:figs/test_nhexa_suspended_table.jpg]]
 | 
			
		||||
#+end_minipage
 | 
			
		||||
\hfill
 | 
			
		||||
#+attr_latex: :options [b]{0.45\linewidth}
 | 
			
		||||
#+begin_minipage
 | 
			
		||||
#+begin_scriptsize
 | 
			
		||||
#+name: tab:test_nhexa_suspended_table_modes
 | 
			
		||||
#+caption: Obtained modes of the suspended table
 | 
			
		||||
#+attr_latex: :environment tabularx :width 0.9\linewidth :placement [b] :align clX
 | 
			
		||||
#+attr_latex: :booktabs t :float nil :center t
 | 
			
		||||
#+RESULTS:
 | 
			
		||||
| *Modes* | *Frequency* | *Description*    |
 | 
			
		||||
|---------+-------------+------------------|
 | 
			
		||||
|     1,2 | 1.3 Hz      | X-Y translations |
 | 
			
		||||
|       3 | 2.0 Hz      | Z rotation       |
 | 
			
		||||
|       4 | 6.9 Hz      | Z translation    |
 | 
			
		||||
|     5,6 | 9.5 Hz      | X-Y rotations    |
 | 
			
		||||
|---------+-------------+------------------|
 | 
			
		||||
|       7 | 701 Hz      | "Membrane" Mode  |
 | 
			
		||||
|       8 | 989 Hz      | Complex mode     |
 | 
			
		||||
|       9 | 1025 Hz     | Complex mode     |
 | 
			
		||||
#+end_scriptsize
 | 
			
		||||
#+end_minipage
 | 
			
		||||
 | 
			
		||||
% spring.kz = 1e3; % Z- Stiffness [N/m]
 | 
			
		||||
% spring.cz = 50; % Z- Damping [N/(m/s)]
 | 
			
		||||
 | 
			
		||||
% spring.z0 = 32e-3; % Equilibrium z-length [m]
 | 
			
		||||
#+end_src
 | 
			
		||||
#+name: fig:test_nhexa_table_flexible_modes
 | 
			
		||||
#+caption: Three identified flexible modes of the suspended table
 | 
			
		||||
#+attr_latex: :options [htbp]
 | 
			
		||||
#+begin_figure
 | 
			
		||||
#+attr_latex: :caption \subcaption{\label{fig:test_nhexa_table_flexible_mode_1}Flexible mode at 701Hz}
 | 
			
		||||
#+attr_latex: :options {\textwidth}
 | 
			
		||||
#+begin_subfigure
 | 
			
		||||
#+attr_latex: :width \linewidth
 | 
			
		||||
[[file:figs/test_nhexa_table_flexible_mode_1.jpg]]
 | 
			
		||||
#+end_subfigure
 | 
			
		||||
#+attr_latex: :caption \subcaption{\label{fig:test_nhexa_table_flexible_mode_2}Flexible mode at 989Hz}
 | 
			
		||||
#+attr_latex: :options {\textwidth}
 | 
			
		||||
#+begin_subfigure
 | 
			
		||||
#+attr_latex: :width \linewidth
 | 
			
		||||
[[file:figs/test_nhexa_table_flexible_mode_2.jpg]]
 | 
			
		||||
#+end_subfigure
 | 
			
		||||
#+attr_latex: :caption \subcaption{\label{fig:test_nhexa_table_flexible_mode_3}Flexible mode at 1025Hz}
 | 
			
		||||
#+attr_latex: :options {\textwidth}
 | 
			
		||||
#+begin_subfigure
 | 
			
		||||
#+attr_latex: :width \linewidth
 | 
			
		||||
[[file:figs/test_nhexa_table_flexible_mode_3.jpg]]
 | 
			
		||||
#+end_subfigure
 | 
			
		||||
#+end_figure
 | 
			
		||||
 | 
			
		||||
**** Inertial Shaker (IS20)
 | 
			
		||||
<<sec:simscape_inertial_shaker>>
 | 
			
		||||
** Simscape Model of the suspended table
 | 
			
		||||
:PROPERTIES:
 | 
			
		||||
:header-args:matlab+: :tangle matlab/simscape_model.m
 | 
			
		||||
:END:
 | 
			
		||||
<<ssec:test_nhexa_table_model>>
 | 
			
		||||
 | 
			
		||||
The inertial shaker is defined as two solid bodies:
 | 
			
		||||
- the "housing" that is fixed to the element that we want to excite
 | 
			
		||||
- the "inertial mass" that is suspended inside the housing
 | 
			
		||||
The Simscape model of the suspended table simply consists of two solid bodies connected by 4 springs.
 | 
			
		||||
The 4 springs are here modelled with "bushing joints" that have stiffness and damping properties in x, y and z directions.
 | 
			
		||||
The 3D representation of the model is displayed in Figure ref:fig:test_nhexa_suspended_table_simscape where the 4 "bushing joints" are represented by the blue cylinders.
 | 
			
		||||
 | 
			
		||||
The inertial mass is guided inside the housing and an actuator (coil and magnet) can be used to apply a force between the inertial mass and the support.
 | 
			
		||||
The "reacting" force on the support is then used as an excitation.
 | 
			
		||||
#+name: fig:test_nhexa_suspended_table_simscape
 | 
			
		||||
#+caption: 3D representation of the simscape model
 | 
			
		||||
#+attr_latex: :width 0.8\linewidth
 | 
			
		||||
[[file:figs/test_nhexa_suspended_table_simscape.png]]
 | 
			
		||||
 | 
			
		||||
#+name: tab:is20_characteristics
 | 
			
		||||
#+caption: Summary of the IS20 datasheet
 | 
			
		||||
#+attr_latex: :environment tabularx :width 0.4\linewidth :align lX
 | 
			
		||||
#+attr_latex: :center t :booktabs t :float t
 | 
			
		||||
| Characteristic  | Value      |
 | 
			
		||||
|-----------------+------------|
 | 
			
		||||
| Output Force    | 20 N       |
 | 
			
		||||
| Frequency Range | 10-3000 Hz |
 | 
			
		||||
| Moving Mass     | 0.1 kg     |
 | 
			
		||||
| Total Mass      | 0.3 kg     |
 | 
			
		||||
 | 
			
		||||
From the datasheet in Table ref:tab:is20_characteristics, we can estimate the parameters of the physical shaker.
 | 
			
		||||
 | 
			
		||||
These parameters are defined below
 | 
			
		||||
**** 3D accelerometer (356B18)
 | 
			
		||||
<<sec:simscape_accelerometers>>
 | 
			
		||||
 | 
			
		||||
An accelerometer consists of 2 solids:
 | 
			
		||||
- a "housing" rigidly fixed to the measured body
 | 
			
		||||
- an "inertial mass" suspended inside the housing by springs and guided in the measured direction
 | 
			
		||||
 | 
			
		||||
The relative motion between the housing and the inertial mass gives a measurement of the acceleration of the measured body (up to the suspension mode of the inertial mass).
 | 
			
		||||
 | 
			
		||||
#+name: tab:356b18_characteristics
 | 
			
		||||
#+caption: Summary of the 356B18 datasheet
 | 
			
		||||
#+attr_latex: :environment tabularx :width 0.5\linewidth :align lX
 | 
			
		||||
#+attr_latex: :center t :booktabs t :float t
 | 
			
		||||
| Characteristic      | Value               |
 | 
			
		||||
|---------------------+---------------------|
 | 
			
		||||
| Sensitivity         | 0.102 V/(m/s2)      |
 | 
			
		||||
| Frequency Range     | 0.5 to 3000 Hz      |
 | 
			
		||||
| Resonance Frequency | > 20 kHz            |
 | 
			
		||||
| Resolution          | 0.0005 m/s2 rms     |
 | 
			
		||||
| Weight              | 0.025 kg            |
 | 
			
		||||
| Size                | 20.3x26.1x20.3 [mm] |
 | 
			
		||||
 | 
			
		||||
*** Identification
 | 
			
		||||
<<sec:simscape_parameters>>
 | 
			
		||||
Let's now identify the resonance frequency and mode shapes associated with the suspension modes of the optical table.
 | 
			
		||||
The model order is 12, and it represents the 6 suspension modes.
 | 
			
		||||
The inertia properties of the parts are set from the geometry and material densities.
 | 
			
		||||
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 simscape model are compared with the measured ones in Table ref:tab:test_nhexa_suspended_table_simscape_modes.
 | 
			
		||||
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
%% Configure Simscape Model
 | 
			
		||||
@@ -4312,79 +4269,20 @@ io(io_i) = linio([mdl, '/F_v'],  1, 'openoutput'); io_i = io_i + 1;
 | 
			
		||||
G = linearize(mdl, io);
 | 
			
		||||
G.InputName  = {'Fx', 'Fy', 'Fz', 'Mx', 'My', 'Mz'};
 | 
			
		||||
G.OutputName  = {'Vdx', 'Vdy', 'Vdz', 'Vrx', 'Vry', 'Vrz'};
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
freqs = logspace(0, 2, 1000);
 | 
			
		||||
figure;
 | 
			
		||||
hold on;
 | 
			
		||||
plot(freqs, abs(squeeze(freqresp(G(1,1), freqs, 'Hz'))), 'DisplayName', '$x$');
 | 
			
		||||
plot(freqs, abs(squeeze(freqresp(G(2,2), freqs, 'Hz'))), 'DisplayName', '$y$');
 | 
			
		||||
plot(freqs, abs(squeeze(freqresp(G(3,3), freqs, 'Hz'))), 'DisplayName', '$z$');
 | 
			
		||||
plot(freqs, abs(squeeze(freqresp(G(4,4), freqs, 'Hz'))), 'DisplayName', '$R_x$');
 | 
			
		||||
plot(freqs, abs(squeeze(freqresp(G(5,5), freqs, 'Hz'))), 'DisplayName', '$R_y$');
 | 
			
		||||
plot(freqs, abs(squeeze(freqresp(G(6,6), freqs, 'Hz'))), 'DisplayName', '$R_z$');
 | 
			
		||||
hold off;
 | 
			
		||||
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log');
 | 
			
		||||
xlabel('Frequency [Hz]'); ylabel('Amplitude [$m/s/N$]');
 | 
			
		||||
legend('location', 'northeast');
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
#+begin_src matlab :results output replace :exports results :tangle no
 | 
			
		||||
size(G)
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
#+RESULTS:
 | 
			
		||||
: size(G)
 | 
			
		||||
: State-space model with 6 outputs, 6 inputs, and 12 states.
 | 
			
		||||
 | 
			
		||||
Compute the resonance frequencies
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
%% Compute the resonance frequencies
 | 
			
		||||
ws = eig(G.A);
 | 
			
		||||
ws = ws(imag(ws) > 0);
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
#+begin_src matlab :exports results :results value table replace :tangle no :post addhdr(*this*)
 | 
			
		||||
data2orgtable([sort(imag(ws))'/2/pi; 1.3, 1.3, 1.95, 6.85, 8.9, 9.5], {'Simscape', 'Experimental'}, {'x', 'y', 'Rz', 'Dz', 'Rx', 'Ry'}, ' %.2f ');
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
#+RESULTS:
 | 
			
		||||
|              |    x |    y |   Rz |   Dz |   Rx |   Ry |
 | 
			
		||||
|--------------+------+------+------+------+------+------|
 | 
			
		||||
| Simscape     | 1.28 | 1.28 | 1.82 | 6.78 | 9.47 | 9.47 |
 | 
			
		||||
| Experimental |  1.3 |  1.3 | 1.95 | 6.85 |  8.9 |  9.5 |
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
And the associated response of the optical table
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
x_mod = zeros(6, 6); % 6 modes, 6 outputs
 | 
			
		||||
 | 
			
		||||
for i = 1:length(ws)
 | 
			
		||||
    xi = evalfr(G(1,:), ws(i));
 | 
			
		||||
    x_mod(:,i) = xi./norm(xi);
 | 
			
		||||
end
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
The results are shown in Table ref:tab:mode_shapes.
 | 
			
		||||
The motion associated to the mode shapes are just indicative.
 | 
			
		||||
 | 
			
		||||
#+begin_src matlab :exports results :results value table replace :tangle no :post addhdr(*this*)
 | 
			
		||||
data2orgtable([flip(imag(ws)/2/pi)'; flip(abs(x_mod),2)], {'$\omega_0$ [Hz]', 'x', 'y', 'z', 'Rx', 'Ry', 'Rz'}, {}, ' %.1f ');
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
#+name: tab:mode_shapes
 | 
			
		||||
#+caption: Resonance frequency and approximation of the mode shapes
 | 
			
		||||
#+attr_latex: :environment tabularx :width 0.4\linewidth :align Xcccccc
 | 
			
		||||
#+attr_latex: :center t :booktabs t :float t
 | 
			
		||||
#+RESULTS:
 | 
			
		||||
| $\omega_0$ [Hz] | 8.2 | 8.2 | 8.2 | 5.8 | 5.6 | 5.6 |
 | 
			
		||||
|-----------------+-----+-----+-----+-----+-----+-----|
 | 
			
		||||
| x               | 0.0 | 0.0 | 0.0 | 0.0 | 0.1 | 0.5 |
 | 
			
		||||
| y               | 0.0 | 0.0 | 0.0 | 0.0 | 0.5 | 0.0 |
 | 
			
		||||
| z               | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 |
 | 
			
		||||
| Rx              | 1.0 | 0.0 | 0.0 | 0.0 | 0.8 | 0.0 |
 | 
			
		||||
| Ry              | 0.0 | 1.0 | 0.0 | 0.0 | 0.2 | 0.9 |
 | 
			
		||||
| Rz              | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 0.0 |
 | 
			
		||||
#+name: tab:test_nhexa_suspended_table_simscape_modes
 | 
			
		||||
#+caption: Comparison of the identified suspension modes with the Simscape model and measured experimentally
 | 
			
		||||
#+attr_latex: :environment tabularx :width 0.6\linewidth :align Xcccc
 | 
			
		||||
#+attr_latex: :center t :booktabs t
 | 
			
		||||
| Directions   | $D_x$, $D_y$ | $R_z$  | $D_z$  | $R_x$, $R_y$ |
 | 
			
		||||
|--------------+--------------+--------+--------+--------------|
 | 
			
		||||
| Experimental | 1.3 Hz       | 2.0 Hz | 6.9 Hz | 9.5 Hz       |
 | 
			
		||||
| Simscape     | 1.3 Hz       | 1.8 Hz | 6.8 Hz | 9.5 Hz       |
 | 
			
		||||
 | 
			
		||||
* Nano-Hexapod Dynamics
 | 
			
		||||
<<sec:test_nhexa_dynamics>>
 | 
			
		||||
@@ -5899,6 +5797,10 @@ freqs = 2*logspace(1, 3, 1000);
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
* Footnotes
 | 
			
		||||
 | 
			
		||||
[fn:7]PCB 356B18. Sensitivity is $1\,V/g$, measurement range is $\pm 5\,g$ and bandwidth is $0.5$ to $5\,\text{kHz}$.
 | 
			
		||||
[fn:6]"SZ8005 20 x 044" from Steinel. The spring rate is specified at $17.8\,N/mm$
 | 
			
		||||
[fn:5]The 450 mm x 450 mm x 60 mm Nexus B4545A from Thorlabs.
 | 
			
		||||
[fn:4]As the accuracy of the FARO arm is $\pm 13\,\mu m$, the true straightness is probably better than the values indicated. The limitation of the instrument is here reached.
 | 
			
		||||
[fn:3]The height dimension is better than $40\,\mu m$. The diameter fit of 182g6 and 24g6 with the two plates is verified.
 | 
			
		||||
[fn:2]Location of all the interface surfaces with the flexible joints are checked. The fits (182H7 and 24H8) with the interface element are checked.
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
% Created 2024-10-27 Sun 11:12
 | 
			
		||||
% Created 2024-10-27 Sun 14:49
 | 
			
		||||
% Intended LaTeX compiler: pdflatex
 | 
			
		||||
\documentclass[a4paper, 10pt, DIV=12, parskip=full, bibliography=totoc]{scrreprt}
 | 
			
		||||
 | 
			
		||||
@@ -133,214 +133,124 @@ After all six struts are mounted, the mounting tool (Figure \ref{fig:test_nhexa_
 | 
			
		||||
\label{sec:test_nhexa_table}
 | 
			
		||||
\section{Introduction}
 | 
			
		||||
 | 
			
		||||
This document is divided as follows:
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item Section \ref{ssec:test_nhexa_table_setup}: the experimental setup and all the instrumentation are described
 | 
			
		||||
\item Section \ref{ssec:test_nhexa_table_identification}: the table dynamics is identified
 | 
			
		||||
\item Section \ref{ssec:test_nhexa_table_model}: a Simscape model of the vibration table is developed and tuned from the measurements
 | 
			
		||||
\end{itemize}
 | 
			
		||||
When a dynamical system is fixed to a support (such as a granite or an optical table), its dynamics will couple to the support dynamics.
 | 
			
		||||
This may results in additional modes appearing in the system dynamics, which are difficult to predict and model.
 | 
			
		||||
Two prevent this issue, strategy adopted here is to mount the nano-hexapod on top a suspended table with low frequency suspension modes.
 | 
			
		||||
 | 
			
		||||
In such a case, the modes of the suspended table are chosen to be at much lower frequency than those of the nano-hexapod such that they are well decoupled.
 | 
			
		||||
An other key advantage is that the suspension modes of the suspended table can be easily modelled using Simscape.
 | 
			
		||||
Therefore, the measured dynamics of the nano-hexapod on top of the suspended table can be compared to a simscape model representing the same experimental conditions.
 | 
			
		||||
The model of the Nano-Hexapod can thus be precisely tuned to match the measured dynamics.
 | 
			
		||||
 | 
			
		||||
The developed suspended table is presented in Section \ref{ssec:test_nhexa_table_setup}.
 | 
			
		||||
The modal analysis of the table is done in \ref{ssec:test_nhexa_table_identification}.
 | 
			
		||||
Finally, the Simscape model representing the suspended table is tuned to match the measured modes (Section \ref{ssec:test_nhexa_table_model}).
 | 
			
		||||
 | 
			
		||||
\section{Experimental Setup}
 | 
			
		||||
\label{ssec:test_nhexa_table_setup}
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item[{$\square$}] Redo the CAD view
 | 
			
		||||
\end{itemize}
 | 
			
		||||
 | 
			
		||||
The design of the suspended table is quite straightforward.
 | 
			
		||||
First, an optical table with high frequency flexible mode was selected\footnote{The 450 mm x 450 mm x 60 mm Nexus B4545A from Thorlabs.}.
 | 
			
		||||
Then, four springs\footnote{``SZ8005 20 x 044'' from Steinel. The spring rate is specified at \(17.8\,N/mm\)} were selected with low enough spring rate such that the suspension modes are below 10Hz.
 | 
			
		||||
Finally, some interface elements were designed, and mechanical lateral mechanical stops were added (Figure \ref{fig:test_nhexa_suspended_table_cad}).
 | 
			
		||||
 | 
			
		||||
\begin{figure}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
\includegraphics[scale=1,width=0.8\linewidth]{figs/vibration-table-cad-view.png}
 | 
			
		||||
\caption{\label{fig:vibration-table-cad-view}CAD View of the vibration table}
 | 
			
		||||
\end{figure}
 | 
			
		||||
\subsection{Suspended table}
 | 
			
		||||
 | 
			
		||||
\begin{description}
 | 
			
		||||
\item[{Dimensions}] 450 mm x 450 mm x 60 mm
 | 
			
		||||
\item[{Mass}] 21.3 kg (bot=7.8, top=7.6, mid=5.9kg)
 | 
			
		||||
\item[{Interface plate}] 3.2kg
 | 
			
		||||
\end{description}
 | 
			
		||||
 | 
			
		||||
\begin{figure}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
\includegraphics[scale=1,width=0.8\linewidth]{figs/test_nhexa_compliance_table.png}
 | 
			
		||||
\caption{\label{fig:compliance_optical_table}Compliance of the B4545A optical table}
 | 
			
		||||
\includegraphics[scale=1,width=0.7\linewidth]{figs/test_nhexa_suspended_table_cad.jpg}
 | 
			
		||||
\caption{\label{fig:test_nhexa_suspended_table_cad}CAD View of the vibration table. Purple cylinders are representing the soft springs.}
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
If we include including the bottom interface plate:
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item Total mass: 24.5 kg
 | 
			
		||||
\item CoM: 42mm below Center of optical table
 | 
			
		||||
\item Ix = 0.54, Iy = 0.54, Iz = 1.07 (with respect to CoM)
 | 
			
		||||
\end{itemize}
 | 
			
		||||
 | 
			
		||||
\subsection{Springs}
 | 
			
		||||
 | 
			
		||||
Helical compression spring
 | 
			
		||||
make of steel wire (52SiCrNi5) with rectangular cross section
 | 
			
		||||
SZ8005 20 x 044 from Steinel
 | 
			
		||||
L0 = 44mm
 | 
			
		||||
Spring rate = 17.8 N/mm
 | 
			
		||||
 | 
			
		||||
\begin{center}
 | 
			
		||||
\includegraphics[scale=1]{figs/test_nhexa_table_springs.jpg}
 | 
			
		||||
\end{center}
 | 
			
		||||
 | 
			
		||||
\section{Identification of the table's response}
 | 
			
		||||
\section{Modal analysis of the suspended table}
 | 
			
		||||
\label{ssec:test_nhexa_table_identification}
 | 
			
		||||
 | 
			
		||||
(4x) 3D accelerometer \href{https://www.pcbpiezotronics.fr/produit/accelerometres/356b18/}{PCB 356B18}
 | 
			
		||||
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 \(\pm 5\,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 next modes are flexible modes of the breadboard as shown in Figure \ref{fig:test_nhexa_table_flexible_modes}, and located above 700Hz.
 | 
			
		||||
 | 
			
		||||
\begin{table}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
\begin{tabularx}{0.5\linewidth}{ccX}
 | 
			
		||||
\begin{minipage}[t]{0.45\linewidth}
 | 
			
		||||
\begin{center}
 | 
			
		||||
\includegraphics[scale=1,width=0.99\linewidth]{figs/test_nhexa_suspended_table.jpg}
 | 
			
		||||
\captionof{figure}{\label{fig:test_nhexa_suspended_table}Mounted suspended table. Only 1 or the 15 accelerometer is mounted on top}
 | 
			
		||||
\end{center}
 | 
			
		||||
\end{minipage}
 | 
			
		||||
\hfill
 | 
			
		||||
\begin{minipage}[b]{0.45\linewidth}
 | 
			
		||||
\begin{scriptsize}
 | 
			
		||||
\begin{center}
 | 
			
		||||
\begin{tabularx}{0.9\linewidth}{clX}
 | 
			
		||||
\toprule
 | 
			
		||||
 & Freq. [Hz] & Description\\
 | 
			
		||||
\textbf{Modes} & \textbf{Frequency} & \textbf{Description}\\
 | 
			
		||||
\midrule
 | 
			
		||||
1 & 1.3 & X-translation\\
 | 
			
		||||
2 & 1.3 & Y-translation\\
 | 
			
		||||
3 & 1.95 & Z-rotation\\
 | 
			
		||||
4 & 6.85 & Z-translation\\
 | 
			
		||||
5 & 8.9 & Tilt\\
 | 
			
		||||
6 & 8.9 & Tilt\\
 | 
			
		||||
7 & 700 & Flexible Mode\\
 | 
			
		||||
1,2 & 1.3 Hz & X-Y translations\\
 | 
			
		||||
3 & 2.0 Hz & Z rotation\\
 | 
			
		||||
4 & 6.9 Hz & Z translation\\
 | 
			
		||||
5,6 & 9.5 Hz & X-Y rotations\\
 | 
			
		||||
\midrule
 | 
			
		||||
7 & 701 Hz & ``Membrane'' Mode\\
 | 
			
		||||
8 & 989 Hz & Complex mode\\
 | 
			
		||||
9 & 1025 Hz & Complex mode\\
 | 
			
		||||
\bottomrule
 | 
			
		||||
\end{tabularx}
 | 
			
		||||
\caption{\label{tab:list_modes}List of the identified modes}
 | 
			
		||||
\captionof{table}{\label{tab:test_nhexa_suspended_table_modes}Obtained modes of the suspended table}
 | 
			
		||||
 | 
			
		||||
\end{center}
 | 
			
		||||
\end{scriptsize}
 | 
			
		||||
\end{minipage}
 | 
			
		||||
 | 
			
		||||
\end{table}
 | 
			
		||||
 | 
			
		||||
\begin{figure}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
\includegraphics[scale=1,width=\linewidth]{figs/test_nhexa_mode_shapes_rigid_table.png}
 | 
			
		||||
\caption{\label{fig:test_nhexa_mode_shapes_rigid_table}Mode shapes of the 6 suspension modes (from 1Hz to 9Hz)}
 | 
			
		||||
\begin{subfigure}{\textwidth}
 | 
			
		||||
\begin{center}
 | 
			
		||||
\includegraphics[scale=1,width=\linewidth]{figs/test_nhexa_table_flexible_mode_1.jpg}
 | 
			
		||||
\end{center}
 | 
			
		||||
\subcaption{\label{fig:test_nhexa_table_flexible_mode_1}Flexible mode at 701Hz}
 | 
			
		||||
\end{subfigure}
 | 
			
		||||
\begin{subfigure}{\textwidth}
 | 
			
		||||
\begin{center}
 | 
			
		||||
\includegraphics[scale=1,width=\linewidth]{figs/test_nhexa_table_flexible_mode_2.jpg}
 | 
			
		||||
\end{center}
 | 
			
		||||
\subcaption{\label{fig:test_nhexa_table_flexible_mode_2}Flexible mode at 989Hz}
 | 
			
		||||
\end{subfigure}
 | 
			
		||||
\begin{subfigure}{\textwidth}
 | 
			
		||||
\begin{center}
 | 
			
		||||
\includegraphics[scale=1,width=\linewidth]{figs/test_nhexa_table_flexible_mode_3.jpg}
 | 
			
		||||
\end{center}
 | 
			
		||||
\subcaption{\label{fig:test_nhexa_table_flexible_mode_3}Flexible mode at 1025Hz}
 | 
			
		||||
\end{subfigure}
 | 
			
		||||
\caption{\label{fig:test_nhexa_table_flexible_modes}Three identified flexible modes of the suspended table}
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
\begin{figure}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
\includegraphics[scale=1,width=0.3\linewidth]{figs/ModeShapeHF1_crop.gif}
 | 
			
		||||
\caption{\label{fig:ModeShapeHF1_crop}First flexible mode of the table at 700Hz}
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
\section{Simscape Model of the suspended table}
 | 
			
		||||
\label{ssec:test_nhexa_table_model}
 | 
			
		||||
In this section, the Simscape model of the vibration table is described.
 | 
			
		||||
 | 
			
		||||
The Simscape model of the suspended table simply consists of two solid bodies connected by 4 springs.
 | 
			
		||||
The 4 springs are here modelled with ``bushing joints'' that have stiffness and damping properties in x, y and z directions.
 | 
			
		||||
The 3D representation of the model is displayed in Figure \ref{fig:test_nhexa_suspended_table_simscape} where the 4 ``bushing joints'' are represented by the blue cylinders.
 | 
			
		||||
 | 
			
		||||
\begin{figure}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
\includegraphics[scale=1,width=0.8\linewidth]{figs/simscape_vibration_table.png}
 | 
			
		||||
\caption{\label{fig:simscape_vibration_table}3D representation of the simscape model}
 | 
			
		||||
\includegraphics[scale=1,width=0.8\linewidth]{figs/test_nhexa_suspended_table_simscape.png}
 | 
			
		||||
\caption{\label{fig:test_nhexa_suspended_table_simscape}3D representation of the simscape model}
 | 
			
		||||
\end{figure}
 | 
			
		||||
\subsection{Simscape Sub-systems}
 | 
			
		||||
\label{sec:simscape_parameters}
 | 
			
		||||
 | 
			
		||||
Parameters for sub-components of the simscape model are defined below.
 | 
			
		||||
 | 
			
		||||
\paragraph{Springs}
 | 
			
		||||
\label{sec:simscape_springs}
 | 
			
		||||
 | 
			
		||||
The 4 springs supporting the suspended optical table are modelled with ``bushing joints'' having stiffness and damping in the x-y-z directions:
 | 
			
		||||
 | 
			
		||||
\paragraph{Inertial Shaker (IS20)}
 | 
			
		||||
\label{sec:simscape_inertial_shaker}
 | 
			
		||||
 | 
			
		||||
The inertial shaker is defined as two solid bodies:
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item the ``housing'' that is fixed to the element that we want to excite
 | 
			
		||||
\item the ``inertial mass'' that is suspended inside the housing
 | 
			
		||||
\end{itemize}
 | 
			
		||||
 | 
			
		||||
The inertial mass is guided inside the housing and an actuator (coil and magnet) can be used to apply a force between the inertial mass and the support.
 | 
			
		||||
The ``reacting'' force on the support is then used as an excitation.
 | 
			
		||||
The model order is 12, and it represents the 6 suspension modes.
 | 
			
		||||
The inertia properties of the parts are set from the geometry and material densities.
 | 
			
		||||
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 simscape model are compared with the measured ones in Table \ref{tab:test_nhexa_suspended_table_simscape_modes}.
 | 
			
		||||
 | 
			
		||||
\begin{table}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
\begin{tabularx}{0.4\linewidth}{lX}
 | 
			
		||||
\begin{tabularx}{0.6\linewidth}{Xcccc}
 | 
			
		||||
\toprule
 | 
			
		||||
Characteristic & Value\\
 | 
			
		||||
Directions & \(D_x\), \(D_y\) & \(R_z\) & \(D_z\) & \(R_x\), \(R_y\)\\
 | 
			
		||||
\midrule
 | 
			
		||||
Output Force & 20 N\\
 | 
			
		||||
Frequency Range & 10-3000 Hz\\
 | 
			
		||||
Moving Mass & 0.1 kg\\
 | 
			
		||||
Total Mass & 0.3 kg\\
 | 
			
		||||
Experimental & 1.3 Hz & 2.0 Hz & 6.9 Hz & 9.5 Hz\\
 | 
			
		||||
Simscape & 1.3 Hz & 1.8 Hz & 6.8 Hz & 9.5 Hz\\
 | 
			
		||||
\bottomrule
 | 
			
		||||
\end{tabularx}
 | 
			
		||||
\caption{\label{tab:is20_characteristics}Summary of the IS20 datasheet}
 | 
			
		||||
 | 
			
		||||
\end{table}
 | 
			
		||||
 | 
			
		||||
From the datasheet in Table \ref{tab:is20_characteristics}, we can estimate the parameters of the physical shaker.
 | 
			
		||||
 | 
			
		||||
These parameters are defined below
 | 
			
		||||
\paragraph{3D accelerometer (356B18)}
 | 
			
		||||
\label{sec:simscape_accelerometers}
 | 
			
		||||
 | 
			
		||||
An accelerometer consists of 2 solids:
 | 
			
		||||
\begin{itemize}
 | 
			
		||||
\item a ``housing'' rigidly fixed to the measured body
 | 
			
		||||
\item an ``inertial mass'' suspended inside the housing by springs and guided in the measured direction
 | 
			
		||||
\end{itemize}
 | 
			
		||||
 | 
			
		||||
The relative motion between the housing and the inertial mass gives a measurement of the acceleration of the measured body (up to the suspension mode of the inertial mass).
 | 
			
		||||
 | 
			
		||||
\begin{table}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
\begin{tabularx}{0.5\linewidth}{lX}
 | 
			
		||||
\toprule
 | 
			
		||||
Characteristic & Value\\
 | 
			
		||||
\midrule
 | 
			
		||||
Sensitivity & 0.102 V/(m/s2)\\
 | 
			
		||||
Frequency Range & 0.5 to 3000 Hz\\
 | 
			
		||||
Resonance Frequency & > 20 kHz\\
 | 
			
		||||
Resolution & 0.0005 m/s2 rms\\
 | 
			
		||||
Weight & 0.025 kg\\
 | 
			
		||||
Size & 20.3x26.1x20.3 [mm]\\
 | 
			
		||||
\bottomrule
 | 
			
		||||
\end{tabularx}
 | 
			
		||||
\caption{\label{tab:356b18_characteristics}Summary of the 356B18 datasheet}
 | 
			
		||||
 | 
			
		||||
\end{table}
 | 
			
		||||
 | 
			
		||||
\subsection{Identification}
 | 
			
		||||
\label{sec:simscape_parameters}
 | 
			
		||||
Let's now identify the resonance frequency and mode shapes associated with the suspension modes of the optical table.
 | 
			
		||||
 | 
			
		||||
\begin{verbatim}
 | 
			
		||||
size(G)
 | 
			
		||||
State-space model with 6 outputs, 6 inputs, and 12 states.
 | 
			
		||||
\end{verbatim}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Compute the resonance frequencies
 | 
			
		||||
\begin{center}
 | 
			
		||||
\begin{tabular}{lrrrrrr}
 | 
			
		||||
 & x & y & Rz & Dz & Rx & Ry\\
 | 
			
		||||
\hline
 | 
			
		||||
Simscape & 1.28 & 1.28 & 1.82 & 6.78 & 9.47 & 9.47\\
 | 
			
		||||
Experimental & 1.3 & 1.3 & 1.95 & 6.85 & 8.9 & 9.5\\
 | 
			
		||||
\end{tabular}
 | 
			
		||||
 | 
			
		||||
\end{center}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
And the associated response of the optical table
 | 
			
		||||
The results are shown in Table \ref{tab:mode_shapes}.
 | 
			
		||||
The motion associated to the mode shapes are just indicative.
 | 
			
		||||
 | 
			
		||||
\begin{table}[htbp]
 | 
			
		||||
\centering
 | 
			
		||||
\begin{tabularx}{0.4\linewidth}{Xcccccc}
 | 
			
		||||
\toprule
 | 
			
		||||
\(\omega_0\) [Hz] & 8.2 & 8.2 & 8.2 & 5.8 & 5.6 & 5.6\\
 | 
			
		||||
\midrule
 | 
			
		||||
x & 0.0 & 0.0 & 0.0 & 0.0 & 0.1 & 0.5\\
 | 
			
		||||
y & 0.0 & 0.0 & 0.0 & 0.0 & 0.5 & 0.0\\
 | 
			
		||||
z & 0.0 & 0.0 & 0.0 & 1.0 & 0.0 & 0.0\\
 | 
			
		||||
Rx & 1.0 & 0.0 & 0.0 & 0.0 & 0.8 & 0.0\\
 | 
			
		||||
Ry & 0.0 & 1.0 & 0.0 & 0.0 & 0.2 & 0.9\\
 | 
			
		||||
Rz & 0.0 & 0.0 & 1.0 & 0.0 & 0.0 & 0.0\\
 | 
			
		||||
\bottomrule
 | 
			
		||||
\end{tabularx}
 | 
			
		||||
\caption{\label{tab:mode_shapes}Resonance frequency and approximation of the mode shapes}
 | 
			
		||||
\caption{\label{tab:test_nhexa_suspended_table_simscape_modes}Comparison of the identified suspension modes with the Simscape model and measured experimentally}
 | 
			
		||||
 | 
			
		||||
\end{table}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||