2024-03-25 10:01:56 +01:00
|
|
|
%% 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;
|
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
% Required external applied force
|
2024-03-25 10:01:56 +01:00
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
% The bending stiffness is foreseen to be $k_{R_y} \approx k_{R_x} \approx 5\,\frac{Nm}{rad}$ and its stroke $\theta_{y,\text{max}}\approx \theta_{x,\text{max}}\approx 25\,mrad$.
|
|
|
|
% The height between the flexible point (center of the joint) and the point where external forces are applied is $h = 22.5\,mm$ (see Figure ref:fig:test_joints_bench_working_principle).
|
2024-03-25 10:01:56 +01:00
|
|
|
|
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
%% Parameters for study
|
|
|
|
kRx = 5; % Bending Stiffness [Nm/rad]
|
2024-03-25 10:01:56 +01:00
|
|
|
Rxmax = 25e-3; % Bending Stroke [rad]
|
2024-04-06 00:33:37 +02:00
|
|
|
h = 22.5e-3; % Height [m]
|
2024-03-25 10:01:56 +01:00
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
%% Estimation of the force to test the full stroke
|
|
|
|
Fxmax = kRx*Rxmax/h; % Force to induce maximum stroke [N]
|
2024-03-25 10:01:56 +01:00
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
% 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 given by eqref:eq:test_joints_max_stroke.
|
|
|
|
% In order to test the full range of the flexible joint, the means of applying a force (explained in the next section) should allow a motion of at least $0.5\,mm$.
|
|
|
|
% Similarly, the measurement range of the displacement sensor should also be higher than $0.5\,mm$.
|
|
|
|
|
|
|
|
% \begin{equation}\label{eq:test_joints_max_stroke}
|
|
|
|
% d_{x,\text{max}} = h \tan(R_{x,\text{max}}) \approx 0.5\,mm
|
2024-03-25 10:01:56 +01:00
|
|
|
% \end{equation}
|
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
|
|
|
|
%% Estimated maximum stroke [m]
|
|
|
|
dxmax = h*tan(Rxmax);
|
|
|
|
|
|
|
|
% Introduction :ignore:
|
|
|
|
% In order to estimate the accuracy of the measured bending stiffness that can be obtained using this measurement bench, an error budget is performed.
|
|
|
|
|
|
|
|
% Based on equation eqref:eq:test_joints_stiff_displ_force, several errors can impact the accuracy of the measured bending stiffness:
|
|
|
|
% - Errors in the measured torque $M_x, M_y$: this is mainly due to inaccuracies of the load cell and of the height estimation $h$
|
|
|
|
% - Errors in the measured bending motion of the flexible joints $\theta_x, \theta_y$: errors from limited shear stiffness, from the deflection of the load cell itself, and from inaccuracy of the height estimation $h$
|
|
|
|
|
|
|
|
% Let's first estimate the displacement induced only by the bending stiffness.
|
|
|
|
|
|
|
|
% \begin{equation}\label{eq:test_joints_dbx}
|
|
|
|
% d_{x,b} = h \tan(\theta_y) = h \tan\left( \frac{F_x \cdot h}{k_{R_y}} \right)
|
2024-03-25 10:01:56 +01:00
|
|
|
% \end{equation}
|
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
% # From equation eqref:eq:test_joints_dbx, we can compute the bending stiffness:
|
|
|
|
% # \begin{equation}
|
|
|
|
% # k_{R_y} = \frac{F_x \cdot h}{\tan^{-1}\left( \frac{D_b}{h} \right)}
|
|
|
|
% # \end{equation}
|
2024-03-25 10:01:56 +01:00
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
% # For small displacement, we have
|
|
|
|
% # \begin{equation}
|
|
|
|
% # \boxed{k_{R_y} \approx h^2 \frac{F_x}{d_x}}
|
|
|
|
% # \end{equation}
|
2024-03-25 10:01:56 +01:00
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
% # And therefore, to precisely measure $k_{R_y}$, we need to:
|
|
|
|
% # - precisely measure the motion $d_x$
|
|
|
|
% # - precisely measure the applied force $F_x$
|
|
|
|
% # - precisely now the height of the force application point $h$
|
2024-03-25 10:01:56 +01:00
|
|
|
|
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
%% 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]
|
2024-03-25 10:01:56 +01:00
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
%% 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]
|
2024-03-25 10:01:56 +01:00
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
%% 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]
|
2024-03-25 10:01:56 +01:00
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
%% Height between the joint's center and the force application point
|
|
|
|
h = 22.5e-3; % [m]
|
2024-03-25 10:01:56 +01:00
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
% Effect of Shear
|
|
|
|
% The applied force $F_x$ will induce some shear $d_{x,s}$ which is described by eqref:eq:test_joints_shear_displ with $k_s$ the shear stiffness of the flexible joint.
|
|
|
|
|
|
|
|
% \begin{equation}\label{eq:test_joints_shear_displ}
|
|
|
|
% d_{x,s} = \frac{F_x}{k_s}
|
|
|
|
% \end{equation}
|
|
|
|
|
|
|
|
% The measured displacement $d_x$ is affected by the shear as shown in equation eqref:eq:test_joints_displ_shear.
|
|
|
|
|
|
|
|
% \begin{equation}\label{eq:test_joints_displ_shear}
|
|
|
|
% d_x = d_{x,b} + d_{x,s} = h \tan\left( \frac{F_x \cdot h}{k_{R_y}} \right) + \frac{F_x}{k_s} \approx F_x \left( \frac{h^2}{k_{R_y}} + \frac{1}{k_s} \right)
|
|
|
|
% \end{equation}
|
|
|
|
|
|
|
|
% The estimated bending stiffness $k_{\text{est}}$ then depends on the shear stiffness eqref:eq:test_joints_error_shear.
|
|
|
|
|
|
|
|
% \begin{equation}\label{eq:test_joints_error_shear}
|
|
|
|
% k_{R_y,\text{est}} = h^2 \frac{F_x}{d_x} \approx k_{R_y} \frac{1}{1 + \frac{k_{R_y}}{k_s h^2}} \approx k_{R_y} \Bigl( 1 - \underbrace{\frac{k_{R_y}}{k_s h^2}}_{\epsilon_{s}} \Bigl)
|
|
|
|
% \end{equation}
|
|
|
|
|
|
|
|
% With an estimated shear stiffness $k_s = 13\,N/\mu m$ from the finite element model and an height $h=25\,mm$, the estimation errors of the bending stiffness due to shear is $\epsilon_s < 0.1\,\%$
|
|
|
|
|
|
|
|
|
|
|
|
%% Estimated error due to shear
|
|
|
|
epsilon_s = 100*abs(1-1/(1 + kb/(ks*h^2))); % Error in %
|
|
|
|
|
|
|
|
% Effect of load cell limited stiffness
|
|
|
|
% As explained in the previous section, because the measurement of the flexible joint deflection is indirectly made with the encoder, errors will be made if the load cell experiences some compression.
|
|
|
|
|
|
|
|
% Suppose the load cell has an internal stiffness $k_f$, the same reasoning that was made for the effect of shear can be applied here.
|
|
|
|
% The estimation error of the bending stiffness due to the limited stiffness of the load cell is then described by eqref:eq:test_joints_error_load_cell_stiffness.
|
|
|
|
|
|
|
|
% \begin{equation}\label{eq:test_joints_error_load_cell_stiffness}
|
|
|
|
% k_{R_y,\text{est}} = h^2 \frac{F_x}{d_x} \approx k_{R_y} \frac{1}{1 + \frac{k_{R_y}}{k_F h^2}} \approx k_{R_y} \Bigl( 1 - \underbrace{\frac{k_{R_y}}{k_F h^2}}_{\epsilon_f} \Bigl)
|
|
|
|
% \end{equation}
|
|
|
|
|
|
|
|
% With an estimated load cell stiffness of $k_f \approx 1\,N/\mu m$ (from the documentation), the errors due to the load cell limited stiffness is around $\epsilon_f = 1\,\%$.
|
2024-03-25 10:01:56 +01:00
|
|
|
|
|
|
|
|
2024-04-06 00:33:37 +02:00
|
|
|
%% Estimated error due to limited load cell stiffness
|
|
|
|
kF = 50/0.05e-3; % Estimated load cell stiffness [N/m]
|
|
|
|
epsilon_f = 100*abs(1-1/(1 + kb/(kF*h^2))); % Error in %
|