Rename all files, tangle Matlab code
Before Width: | Height: | Size: 3.8 MiB |
Before Width: | Height: | Size: 415 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 41 KiB |
Before Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 276 KiB |
Before Width: | Height: | Size: 353 KiB |
Before Width: | Height: | Size: 29 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 7.6 KiB |
Before Width: | Height: | Size: 167 KiB After Width: | Height: | Size: 167 KiB |
Before Width: | Height: | Size: 185 KiB After Width: | Height: | Size: 185 KiB |
Before Width: | Height: | Size: 396 KiB After Width: | Height: | Size: 396 KiB |
Before Width: | Height: | Size: 98 KiB After Width: | Height: | Size: 98 KiB |
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 110 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 168 KiB After Width: | Height: | Size: 168 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 169 KiB After Width: | Height: | Size: 169 KiB |
BIN
figs/test_joints_bend_stiff_hist.pdf
Normal file
BIN
figs/test_joints_bend_stiff_hist.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
figs/test_joints_bend_stroke_hist.pdf
Normal file
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
Before Width: | Height: | Size: 217 KiB After Width: | Height: | Size: 217 KiB |
BIN
figs/test_joints_force_sensor_calib_error.pdf
Normal file
BIN
figs/test_joints_force_sensor_calib_error.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
figs/test_joints_force_sensor_calib_fit.pdf
Normal file
BIN
figs/test_joints_force_sensor_calib_fit.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
figs/test_joints_force_sensor_calib_time.pdf
Normal file
BIN
figs/test_joints_force_sensor_calib_time.png
Normal file
After Width: | Height: | Size: 34 KiB |
BIN
figs/test_joints_force_sensor_stiffness_fit.pdf
Normal file
BIN
figs/test_joints_force_sensor_stiffness_fit.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
figs/test_joints_meas_F_d.pdf
Normal file
BIN
figs/test_joints_meas_F_d.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
figs/test_joints_meas_F_d_lin_fit.pdf
Normal file
BIN
figs/test_joints_meas_F_d_lin_fit.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
figs/test_joints_meas_bend_time.pdf
Normal file
BIN
figs/test_joints_meas_bend_time.png
Normal file
After Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 360 KiB After Width: | Height: | Size: 360 KiB |
Before Width: | Height: | Size: 230 KiB After Width: | Height: | Size: 230 KiB |
Before Width: | Height: | Size: 233 KiB After Width: | Height: | Size: 233 KiB |
Before Width: | Height: | Size: 237 KiB After Width: | Height: | Size: 237 KiB |
BIN
figs/test_joints_received.jpg
Normal file
After Width: | Height: | Size: 263 KiB |
BIN
figs/test_joints_size_hist.pdf
Normal file
BIN
figs/test_joints_size_hist.png
Normal file
After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.5 MiB |
BIN
figs/test_joints_thickness_stiffness.pdf
Normal file
BIN
figs/test_joints_thickness_stiffness.png
Normal file
After Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 2.8 MiB After Width: | Height: | Size: 2.8 MiB |
Before Width: | Height: | Size: 630 KiB After Width: | Height: | Size: 630 KiB |
75
matlab/test_joints_1_dim_meas.m
Normal file
@ -0,0 +1,75 @@
|
||||
%% Clear Workspace and Close figures
|
||||
clear; close all; clc;
|
||||
|
||||
%% Intialize Laplace variable
|
||||
s = zpk('s');
|
||||
|
||||
%% Path for functions, data and scripts
|
||||
addpath('./mat/'); % Path for data
|
||||
|
||||
%% Colors for the figures
|
||||
colors = colororder;
|
||||
|
||||
% Measurement Results
|
||||
% # - Strange shape: 5
|
||||
|
||||
% The expected flexible beam thickness is $250\,\mu m$.
|
||||
% However, it is more important that the thickness of all beams are close to each other.
|
||||
|
||||
% The dimension of the beams are been measured at each end to be able to estimate the mean of the beam thickness.
|
||||
|
||||
% All the measured dimensions are summarized in Table ref:tab:test_joints_flex_dim.
|
||||
|
||||
|
||||
meas_flex = [[223, 226, 224, 214];
|
||||
[229, 231, 237, 224];
|
||||
[234, 230, 239, 231];
|
||||
[233, 227, 229, 232];
|
||||
[225, 212, 228, 228];
|
||||
[220, 221, 224, 220];
|
||||
[206, 207, 228, 226];
|
||||
[230, 224, 224, 223];
|
||||
[223, 231, 228, 233];
|
||||
[228, 230, 235, 231];
|
||||
[197, 207, 211, 204];
|
||||
[227, 226, 225, 226];
|
||||
[215, 228, 231, 220];
|
||||
[216, 224, 224, 221];
|
||||
[209, 214, 220, 221];
|
||||
[213, 210, 230, 229]];
|
||||
|
||||
|
||||
|
||||
% #+name: tab:test_joints_flex_dim
|
||||
% #+caption: Measured Dimensions of the flexible beams in $\mu m$
|
||||
% #+attr_latex: :environment tabularx :width 0.4\linewidth :align Xcccc
|
||||
% #+attr_latex: :center t :booktabs t :float t
|
||||
% #+RESULTS:
|
||||
% | | Y1 | Y2 | X1 | X2 |
|
||||
% |----+-----+-----+-----+-----|
|
||||
% | 1 | 223 | 226 | 224 | 214 |
|
||||
% | 2 | 229 | 231 | 237 | 224 |
|
||||
% | 3 | 234 | 230 | 239 | 231 |
|
||||
% | 4 | 233 | 227 | 229 | 232 |
|
||||
% | 5 | 225 | 212 | 228 | 228 |
|
||||
% | 6 | 220 | 221 | 224 | 220 |
|
||||
% | 7 | 206 | 207 | 228 | 226 |
|
||||
% | 8 | 230 | 224 | 224 | 223 |
|
||||
% | 9 | 223 | 231 | 228 | 233 |
|
||||
% | 10 | 228 | 230 | 235 | 231 |
|
||||
% | 11 | 197 | 207 | 211 | 204 |
|
||||
% | 12 | 227 | 226 | 225 | 226 |
|
||||
% | 13 | 215 | 228 | 231 | 220 |
|
||||
% | 14 | 216 | 224 | 224 | 221 |
|
||||
% | 15 | 209 | 214 | 220 | 221 |
|
||||
% | 16 | 213 | 210 | 230 | 229 |
|
||||
|
||||
% An histogram of these measured dimensions is shown in Figure ref:fig:test_joints_size_hist.
|
||||
|
||||
|
||||
figure;
|
||||
histogram([(meas_flex(:,1)+meas_flex(:,2))/2,(meas_flex(:,3)+meas_flex(:,4))/2], 7)
|
||||
xlabel("Beam's Thickness [$\mu m$]");
|
||||
|
||||
%% Save beam sizes
|
||||
save('./mat/flex_meas_dim.mat', 'meas_flex');
|
59
matlab/test_joints_2_bench_dimensioning.m
Normal file
@ -0,0 +1,59 @@
|
||||
%% Clear Workspace and Close figures
|
||||
clear; close all; clc;
|
||||
|
||||
%% Intialize Laplace variable
|
||||
s = zpk('s');
|
||||
|
||||
%% Path for functions, data and scripts
|
||||
addpath('./mat/'); % Path for data
|
||||
|
||||
%% Colors for the figures
|
||||
colors = colororder;
|
||||
|
||||
% Flexible joint Geometry
|
||||
% The flexible joint used for the Nano-Hexapod is shown in Figure ref:fig:test_joints_bend_geometry.
|
||||
% Its bending stiffness is foreseen to be $k_{R_y}\approx 5\,\frac{Nm}{rad}$ and its stroke $\theta_{y,\text{max}}\approx 25\,mrad$.
|
||||
|
||||
% #+name: fig:test_joints_bend_geometry
|
||||
% #+caption: Geometry of the flexible joint
|
||||
% [[file:figs/test_joints_bend_geometry.png]]
|
||||
|
||||
% The height between the flexible point (center of the joint) and the point where external forces are applied is $h = 20\,mm$.
|
||||
|
||||
% Let's define the parameters on Matlab.
|
||||
|
||||
kRx = 5; % Bending Stiffness [Nm/rad]
|
||||
Rxmax = 25e-3; % Bending Stroke [rad]
|
||||
h = 20e-3; % Height [m]
|
||||
|
||||
% Required external applied force
|
||||
|
||||
% The bending $\theta_y$ of the flexible joint due to the force $F_x$ is:
|
||||
% \begin{equation}
|
||||
% \theta_y = \frac{M_y}{k_{R_y}} = \frac{F_x h}{k_{R_y}}
|
||||
% \end{equation}
|
||||
|
||||
% Therefore, the applied force to test the full range of the flexible joint is:
|
||||
% \begin{equation}
|
||||
% F_{x,\text{max}} = \frac{k_{R_y} \theta_{y,\text{max}}}{h}
|
||||
% \end{equation}
|
||||
|
||||
|
||||
Fxmax = kRx*Rxmax/h; % Force to induce maximum stroke [N]
|
||||
|
||||
|
||||
|
||||
% And we obtain:
|
||||
|
||||
sprintf('\\begin{equation} F_{x,max} = %.1f\\, [N] \\end{equation}', Fxmax)
|
||||
|
||||
% Required actuator stroke and sensors range
|
||||
|
||||
% The flexible joint is designed to allow a bending motion of $\pm 25\,mrad$.
|
||||
% The corresponding stroke at the location of the force sensor is:
|
||||
% \[ d_{x,\text{max}} = h \tan(R_{x,\text{max}}) \]
|
||||
|
||||
|
||||
dxmax = h*tan(Rxmax);
|
||||
|
||||
sprintf('\\begin{equation} d_{max} = %.1f\\, [mm] \\end{equation}', 1e3*dxmax)
|
73
matlab/test_joints_3_error_budget.m
Normal file
@ -0,0 +1,73 @@
|
||||
%% Clear Workspace and Close figures
|
||||
clear; close all; clc;
|
||||
|
||||
%% Intialize Laplace variable
|
||||
s = zpk('s');
|
||||
|
||||
%% Path for functions, data and scripts
|
||||
addpath('./mat/'); % Path for data
|
||||
|
||||
%% Colors for the figures
|
||||
colors = colororder;
|
||||
|
||||
% Finite Element Model
|
||||
% From the Finite Element Model, the stiffness and stroke of the flexible joint have been computed and summarized in Tables ref:tab:test_joints_axial_shear_prop and ref:tab:test_joints_bending_torsion_prop.
|
||||
|
||||
|
||||
%% Stiffness
|
||||
ka = 94e6; % Axial Stiffness [N/m]
|
||||
ks = 13e6; % Shear Stiffness [N/m]
|
||||
kb = 5; % Bending Stiffness [Nm/rad]
|
||||
kt = 260; % Torsional Stiffness [Nm/rad]
|
||||
|
||||
%% Maximum force
|
||||
Fa = 469; % Axial Force before yield [N]
|
||||
Fs = 242; % Shear Force before yield [N]
|
||||
Fb = 0.118; % Bending Force before yield [Nm]
|
||||
Ft = 1.508; % Torsional Force before yield [Nm]
|
||||
|
||||
%% Compute the corresponding stroke
|
||||
Xa = Fa/ka; % Axial Stroke before yield [m]
|
||||
Xs = Fs/ks; % Shear Stroke before yield [m]
|
||||
Xb = Fb/kb; % Bending Stroke before yield [rad]
|
||||
Xt = Ft/kt; % Torsional Stroke before yield [rad]
|
||||
|
||||
% Setup
|
||||
|
||||
% The setup is schematically represented in Figure ref:fig:test_joints_bench_side_bis.
|
||||
|
||||
% The force is applied on top of the flexible joint with a distance $h$ with the joint's center.
|
||||
% The displacement of the flexible joint is also measured at the same height.
|
||||
|
||||
% The height between the joint's center and the force application point is:
|
||||
|
||||
h = 25e-3; % Height [m]
|
||||
|
||||
% Estimation error due to force sensor compression
|
||||
% The measured displacement is not done directly at the joint's location.
|
||||
% The force sensor compression will then induce an error on the joint's stiffness.
|
||||
|
||||
% The force sensor stiffness $k_F$ is estimated to be around:
|
||||
|
||||
kF = 50/0.05e-3; % [N/m]
|
||||
|
||||
sprintf('k_F = %.1e [N/m]', kF)
|
||||
|
||||
% Estimation error due to height estimation error
|
||||
% Let's consider an error in the estimation of the height from the application of the force to the joint's center:
|
||||
% \begin{equation}
|
||||
% h_{\text{est}} = h (1 + \epsilon)
|
||||
% \end{equation}
|
||||
|
||||
% The computed bending stiffness will be:
|
||||
% \begin{equation}
|
||||
% k_\text{est} \approx h_{\text{est}}^2 \frac{F_x}{d_x}
|
||||
% \end{equation}
|
||||
|
||||
% And the stiffness estimation error is:
|
||||
% \begin{equation}
|
||||
% \frac{k_{\text{est}}}{k_{R_y}} = (1 + \epsilon)^2
|
||||
% \end{equation}
|
||||
|
||||
|
||||
h_err = 0.2e-3; % Height estimation error [m]
|