SlideShare une entreprise Scribd logo
1  sur  47
Télécharger pour lire hors ligne
POLITECNICO DI MILANO
Industrial Engineering department
Academic year 2013-14
Bachelor’s degree in Mechanical Engineering
Mechanical Vibrations year project
Danieli Breda Forging Manipulator
Paolo Pennacchi
Francesco Ripamonti
Authors:
Luca Bazzucchi, 773783
Filippo Campolmi, 794252
Florian Zatti, 772672
We were given the second configuration of the Danieli Forging Manipulator and
we performed the kinematics modeling of the product.
We decided to model the three hydraulic actuators as three different spring-damper
systems, characterized by a stiffness and a damping related to their strokes thanks
to the following equations.
All the kinematics of the system is computed thanks to three different vectorial
equations, exploiting the degrees of freedom to get elongations, angular velocities
of the bodies and elongation velocities .
As degrees of freedom we chose to use three rotations of rods, to get easier
computation of velocities and displacements.
Another way to compute kinematics is to use extension velocities of the three
pistons, but this way is quite tough to compute the same results. In order to
simplify all the analysis we decided to follow the first strategy.
1)
2)
3)
4)
5)
1)
2)
3)
4)
5)
1)
2)
3)
4)
5)
Static preloads
Starting from the Lagrange equations and imposing velocities and accelerations equal
to zero, since we are considering the static equilibrium position, we get the following
expressions :
q = (θ, λ, α)
Generally we can consider external forces as a sum of 2 terms: one is a mean
value, whereas the other one is a oscillating term function of time.
In the static equilibrium position we neglect the second term, since we are in a
steady condition.
This system once solved provides us the three static preloads of the actuators.
01=-51.27 mm
02=-0.71 mm
03=-31.81 mm
The static preloads of the system are the pre-compressions that the system generates
in the springs to get the equilibrium position. Under these compressions the system
can sustain its weight, that in this particular case is enormous, i.e. more or less 50
tons.
We have a really little preload on the horizontal actuator, that have to suffer less
weight with respect to the other two actuators.
The two vertical actuators preloads are not so small since they are in the order of cm,
since the weight is considerable, even if the oil of the pistons is quite incompressible.
Linearization of the equation of motion
The equations found using the Lagrange method are non linear and so the resolution
of them is too difficult (we have 3 differential equations with not constant
coefficients). However this formulation must be used in large displacements and
solved by means of numerical integration. If we deal with small displacements, we
can linearize the 3 equations of motion around the equilibrium position, making the
solution of the system easier. So we will linearize the 4 contributions (potential
energy, dissipative function, kinetic energy and Q) of the Lagrange equations.
Linearization of potential energy V
For a one degree of freedom system the approach is the following one: we perform
the Taylor expansion of around the equilibrium position ( q=q0) , finding its first
order term which is the equivalent stiffness of the linearized system in small
displacements; this procedure returns two contributions:
Elastic contribution :
Gravitational contribution :
The total equivalent stiffness is simply the sum of these 2 quantities.
For a multidegree of freedom system, as in our case, the procedure is the same; the
only difference is that we have matrices instead of scalar values.
V= zT
[K] z;
The equivalent stiffness matrix becomes:
Where:
 i=1,2,3 (there are 3 actuators);
 ki is the stiffness of each actuator;
 mi is the mass of each body;
 KF is a diagonal matrix containing the 3 actuator stiffnesses ;
 Yk is a vector containing the 3 elongations 1, 2, 3;
 Jk is the stiffness jacobian;
 H is the hessian matrix;
 0 is the static preload of the actuators.
Jk θ λ α
1 0 0 1134.3
2 -1162.3 1162.3 0
3 -2477.4 -14.3 0
HΔl1 = [ ]
H Δl2 = [ ]
H Δl3 = [ ]
Hhg1 = 1.0e+03 * [ ]
Hhg2 = [ ]
Hhg3 = [ ]
K_el_I = 1.0e+12 * [ ] N/m
K_el_II = 1.0e+09 * [ ] N/m
K_g = 1.0e+08 * [ ] N/m
[K]=[ K_el_I] + [K_el_II] + [K_g] =1.0e+12*[ ] N/m
Linearization of dissipative function D
The dissipative function for a multidegree of freedom system is: D = ̇k
T
[RF] ̇k ,
where:
 ̇k is a vector containing the elongation velocities of the 3 actuators;
 [RF] is a diagonal matrix containing the damping coefficients of the 3
actuators.
Since ̇k = [Jk] zT
(Jk is the stiffness jacobian), D becomes:
D = ̇T
[R] ̇ with [R] = [Jk]T
[RF] [Jk];
[R]= 1.0e+10 * [ ] (N*s)/m
Linearization of kinetic energy T
In order to perform the linearization of the kinetic energy, we have linearized the
kinematic relationships getting the following results:
V1x - ̇ LG1 cos(6.81-θo) - ̇ NC cos(αo) - ̇ n sin(λo)
V1y ̇ LG1 sin(6.81-θo) - ̇ NC sin(αo) + ̇ n cos(λo)
ω1 ̇
V2 CG2 α̇
ω2 ̇
V3 FG3 α̇
θo, αo and λo are the values of the independent coordinates θ, λ, α at the
equilibrium position.
(V1)2
= (V1x)2
+ (V1y)2
We have projected the velocity V1 on x and y direction to get an easier matrix
representation in the mass jacobian.
Mass jacobian
JM ̇ ̇ ̇
V1x -564.6 -408.8 2291.2
V1y 369.9 -1021.2 201.2
ω1 0 0 623.0
V2 0 0 467.0
ω2 1 0 0
V3 0 0 1
ω3 0 0 1
The kinetic energy for a multidegree of freedom system is: T= ̇M
T
[MF] ̇M
where:
 ̇M is a vector containing all the velocities of the bodies in physical
coordinates;
 [MF] is a diagonal matrix containing masses and inertia properties of the 3
bodies; since we have considered V1x and V1y, MF becomes diag ( m1, m1, J1,
m2, J2, m3, J3 );
Since ̇M = [JM] ̇, T becomes: T = ̇T
[M] ̇ with [M] = [JM]T
[MF] [JM]; [M] is the
mass matrix.
[M] = 1.0e+11 [ ] kg
Linearization of lagrangian component Q
In general an external force F(t) having non null average value can be written as the
sum of two contributions:
 ̅ mean value;
 ̃(t) oscillatory component.
For a single degree of freedom system the general expression of the Lagrangian
component of the external force is:
where:
The first step we have performed is to project s (virtual displacement of the point in
which the force is applied) on x and y direction and then we have linearized the
kinematic relationships: as a consequence, the fourth expression (“equivalent
stiffness Mathieu-like”) and the third one are null. Since the oscillatory component is
not present in our external force, even the second term is null. So the only term that
remains is the first one.
For a multidegree of freedom system the previous considerations are still valid; the
difference is that:
*
L = F
T
F = zT
( [JM] T
F ) = zT
QF
where:
F {
s
s } F = { } z = {
θ
λ
α
}
[JM] is the force jacobian:
JM θ λ α
sx -335.1 2291.2 -408.8
sy -2169.3 -201.2 -1021.2
Natural frequencies and mode shapes
Once we have linearized T, D, V and Q, we apply the Lagrange method and we
obtain three linearized equations of motion.
[M] ̈ + [R] ̇ + [K] z = Q
These equations are coupled; this means that
 from the mathematical point of view, we can not start solving one equation
independently from the other;
 from the physical point of view, the motion of a certain mass will influence the
motion of the other ones.
Now we can solve the system and find the solution. The first step is to calculate the
natural frequencies. To do this, we will consider the unforced and undamped system:
[M] ̈ + [K] z = 0
Its solution will be: z = z0 eiωt
z0 = {
̃
̃
̃
}
Deriving z with respect to time, we obtain: ̇ = iωz0 eiωt
; ̈ = -ω2
z0 eiωt
Substituting these terms inside the system:
( -ω2
[M] + [K] ) z0 eiωt
= 0
since this expression must be satisfied for all values of time t
( -ω2
[M] + [K] ) z0 = 0
This is an algebraic system in which the unknown is z0. If the determinant of the
coefficients matrix is different from zero, there will be only one solution, that will be
the trivial one since this system is also homogenous.
Trivial solution means {
̃
̃
̃
} = { } no vibration !!!
In order to avoid this situation, we must impose that the determinant of the
coefficients matrix is equal to zero and so we obtain an equation called “frequencies
or characteristic equation” in which the unknown is ω.
̃, ̃, ̃ are the
amplitudes of the θ, λ, α
respectively
Solving this equation, we obtain the natural frequencies of our system:
ω1 = 27.3928 rad/s ω2 = 2.7260 rad/s ω3 = 1.0936 rad/s
We could have used another procedure in order to get the natural frequencies:
( -ω2
[M] + [K] ) z0 = 0
-ω2
[I] + [M]-1
[K]
[A]
So we obtain: ω2
[I] z0 = [A] z0
[φ] = [ ]
Observation: z = [φ] q
This is an eigenvalue problem in which:
 ω are the eigenvalues;
 the eigenvectors are collected in a
matrix called “φ” (mode shapes).
q is the vector containing
the modal coordinates
Frequency response function
We will start from the linearize equations of motion ( [M] ̈ + [R] ̇ + [K] z = Q ) and
we will suppose that the external force is F = F0 e iΩt
(approach with complex
numbers).
Q = Q0 e iΩt
z = z0 eiΩt
Deriving z with respect time, we obtain:
̇ =iΩz0eiΩt
; ̈ = -Ω2
z0 eiΩt
This is the
particular
solution
Substituting these terms inside the system:
( -Ω2
[M] + i Ω [R] + [K] ) z0 eiωt
= Q0 e iΩt
( -Ω2
[M] + i Ω [R] + [K] ) z0= Q0
[A]=[A(Ω)]
So: z0= [A]-1
Q0.
an amplitude
z0 is a complex number and hence it has
a phase
In the following pictures, we have considered Ω = [ 0 … 2*ω1].
Matrix of the
mechanical
impedence of the
system
Amplitude θ
Amplitude λ
Amplitude α
When the external disturbance forces the system with a frequency Ω close to the three
natural frequencies of the system, the resonance condition is reached and the
amplitudes increase (as we can see from these figures).
Some comments:
 when Ω is equal to ω1, the amplitude of λ and α is very small with respect to
the ones obtained when Ω is equal to ω2 or ω3;
 the order of magnitude of the amplitudes is 10-7
÷10-8
;
 the amplitude of α does not start from zero as it could appear.
Phase θ
Phase λ
Phase α
When we are in the resonance condition, the phase is (as it should be).
From the previous considerations, we can state the these pictures are reasonable and
compatible with the theory we have studied and the system we dealt with.
Lagrange’ equations
clc
clear all
close all
syms k1 k2 k3 c csi b alpha teta lamda m l I_1 n g m1 m2 m3 J1 J2 J3 grav NC LG1 CG2
FG3 PG1 delta_1_static delta_2_static delta_3_static c1 c2 c3 lamda_dot teta_dot
alpha_dot F0_ext de_alpha de_teta de_lamda
%%%%% potential energy eventualmente correggere lamBa
% delta_1
alpha_tilde=alpha+1.85;
eta= atan( (c*sin(csi)+b*sin(alpha_tilde)) / (c*cos(csi)+b*cos(alpha_tilde)) ) + pi ;
% attenzione all'arcotangente!!! va aggiunto "pi"
a= (c*cos(csi)+b*cos(alpha_tilde)) / cos(eta);
delta_1_dynamic= -3025 + a; % dinamico
delta_1= delta_1_dynamic+delta_1_static;
% delta_2
tau=teta-4.31;
gamma= atan( (m*sin(lamda)+l*sin(teta)+I_1*sin(tau)) /
(m*cos(lamda)+l*cos(teta)+I_1*cos(tau)) );
j= (m*sin(lamda)+l*sin(teta)+I_1*sin(tau)) / sin(gamma);
delta_2_dynamic= j-2175;
delta_2= delta_2_dynamic+delta_2_static;
% delta_3
epsilon= atan( (n*sin(lamda)+l*sin(teta)) / (n*cos(lamda)+l*cos(teta)-g) );
h= (n*sin(lamda)+l*sin(teta)) / sin(epsilon);
delta_3_dynamic= h-2400;
delta_3= delta_3_dynamic+delta_3_static;
% elastic potential energy
V_el=0.5* ( k1*(delta_1)^2 + k2*(delta_2)^2 + k3*(delta_3)^2 );
% height 1
h1= NC*cos(alpha)+n*sin(lamda)+LG1*sin(teta-5.24);
% height 2
h2= 623*sin(alpha+2.27);
% height 3
h3= 467*sin(alpha+2.79);
% gravitational potential energy
V_g= grav*(m1*h1+m2*h2+m3*h3);
V=V_el+V_g;
%%%%% dissipative function
% delta_1_dot
eta_dot= b*alpha_dot*cos(alpha_tilde-eta)/a;
a_dot= (-b*alpha_dot*sin(alpha_tilde) / cos(eta) )+ a*eta_dot*tan(eta);
delta_1_dot=a_dot;
% delta_2_dot
gamma_dot= (m*lamda_dot*cos(lamda-gamma)+teta_dot*( l*cos(teta-gamma)+I_1*cos(tau-
gamma))) / j;
j_dot= (m*lamda_dot*cos(lamda)+l*teta_dot*cos(teta)+I_1*teta_dot*cos(tau)) / sin(gamma)
- j*gamma_dot*cot(gamma);
delta_2_dot=j_dot;
% delta_3_dot
epsilon_dot= (n*lamda_dot*cos(lamda-epsilon)+l*teta_dot*cos(teta-epsilon)) / h;
h_dot= (n*lamda_dot*sin(lamda)+l*teta_dot*sin(teta)) / cos(epsilon) +
h*epsilon_dot*tan(epsilon);
delta_3_dot= h_dot;
D= 0.5* ( c1*delta_1_dot^2 + c2*delta_2_dot^2 + c3*delta_3_dot^2 );
%%%%% kinetic energy
% velocities
v1x= -teta_dot*LG1*cos(6.81-teta)-alpha_dot*NC*cos(alpha)-lamda_dot*n*sin(lamda);
v1y= teta_dot*LG1*sin(6.81-teta)-alpha_dot*NC*sin(alpha)+lamda_dot*n*cos(lamda);
v1= sqrt(v1x^2 + v1y^2);
v2= CG2*alpha_dot;
v3= FG3*alpha_dot;
% angular speed
omega_1= teta_dot;
omega_2= alpha_dot;
omega_3= alpha_dot;
T= 0.5*( m1*v1^2 + m2*v2^2 + m3*v3^2 +J1*omega_1^2 + J2*omega_2^2 + J3*omega_3^2 );
%%%%% virtual work % angles in degrees!!!!!!!!!!!!!!!
F_ext_x= F0_ext*cosd(15);
F_ext_y= -F0_ext*sind(15);
de_s_x= -NC*cos(alpha)*de_alpha - n*sin(lamda)*de_lamda - LG1*sin(teta-5.24)*de_teta -
PG1*sin(6.14-teta)*de_teta;
de_s_y= -NC*sin(alpha)*de_alpha - n*cos(lamda)*de_lamda + LG1*cos(teta-5.24)*de_teta -
PG1*cos(6.14-teta)*de_teta;
de_work= F_ext_x*de_s_x + F_ext_y*de_s_y; % da derivare rispetto ai de_...
%%%%% derivatives
% derivative of potential energy
d_V_teta= diff(V,teta);
d_V_lamda= diff(V,lamda);
d_V_alpha= diff(V,alpha);
% derivative of dissipative function
d_D_teta_dot= diff(D,teta_dot);
d_D_lamda_dot= diff(D,lamda_dot);
d_D_alpha_dot= diff(D,alpha_dot);
% derivative of de_work
Q_teta= diff(de_work,de_teta);
Q_lamda= diff(de_work,de_lamda);
Q_alpha= diff(de_work,de_alpha);
% derivative of kinetic energy
d_T_teta= diff( T,teta );
d_T_lamda= diff( T,lamda );
d_T_alpha= diff( T,alpha );
d_T_teta_dot= diff( T,teta_dot );
d_T_lamda_dot= diff( T,lamda_dot );
d_T_alpha_dot= diff( T,alpha_dot );
%%
clc
clear all
close all
syms t k1 k2 k3 c csi teta alpha lamda lamba_dot(t) alpha_dot(t) teta_dot(t) b m l I_1
n g m1 m2 m3 J1 J2 J3 grav NC LG1 CG2 FG3 PG1 delta_1_static delta_2_static
delta_3_static c1 c2 c3 lamda_dot teta_dot alpha_dot F0_ext de_alpha de_teta de_lamda
d_T_teta_dot=J1*teta_dot + (m1*(2*LG1*cos(teta - 681/100)*(lamda_dot*n*sin(lamda) +
LG1*teta_dot*cos(teta - 681/100) + NC*alpha_dot*cos(alpha)) + 2*LG1*sin(teta -
681/100)*(LG1*teta_dot*sin(teta - 681/100) - lamda_dot*n*cos(lamda) +
NC*alpha_dot*sin(alpha))))/2;
d_T_lamba_dot=(m1*(2*n*sin(lamda)*(lamda_dot*n*sin(lamda) + LG1*teta_dot*cos(teta -
681/100) + NC*alpha_dot*cos(alpha)) - 2*n*cos(lamda)*(LG1*teta_dot*sin(teta - 681/100)
- lamda_dot*n*cos(lamda) + NC*alpha_dot*sin(alpha))))/2;
d_T_alpha_dot=alpha_dot*m2*CG2^2 + alpha_dot*m3*FG3^2 + J2*alpha_dot + J3*alpha_dot +
(m1*(2*NC*cos(alpha)*(lamda_dot*n*sin(lamda) + LG1*teta_dot*cos(teta - 681/100) +
NC*alpha_dot*cos(alpha)) + 2*NC*sin(alpha)*(LG1*teta_dot*sin(teta - 681/100) -
lamda_dot*n*cos(lamda) + NC*alpha_dot*sin(alpha))))/2;
% derivative of kinetic energy with respect of time
d_T_teta_dot_t = diff ( d_T_teta_dot,t );
d_T_lamda_dot_t = diff ( d_T_lamba_dot,t );
d_T_alpha_dot_t = diff ( d_T_alpha_dot,t );
Linearization
clc
clear all
close all
syms k1 k2 k3 c csi b alpha teta lamda m l I_1 n g m1 m2 m3 J1 J2 J3 grav NC LG1 CG2
FG3 PG1 delta_1_static delta_2_static delta_3_static c1 c2 c3 lamda_dot teta_dot
alpha_dot F0_ext de_alpha de_teta de_lamda
%%%%% potential energy
% delta_1
alpha_tilde=alpha+1.85;
eta= atan( (c*sin(csi)+b*sin(alpha_tilde)) / (c*cos(csi)+b*cos(alpha_tilde)) );
a= (c*cos(csi)+b*cos(alpha_tilde)) / cos(eta);
delta_1_dynamic= -3025 + a; % dinamico
delta_1= delta_1_dynamic+delta_1_static;
% delta_2
tau=teta-4.31;
gamma= atan( (m*sin(lamda)+l*sin(teta)+I_1*sin(tau)) /
(m*cos(lamda)+l*cos(teta)+I_1*cos(tau)) );
j= (m*sin(lamda)+l*sin(teta)+I_1*sin(tau)) / sin(gamma);
delta_2_dynamic= j-2175;
delta_2= delta_2_dynamic+delta_2_static;
% delta_3
epsilon= atan( (n*sin(lamda)+l*sin(teta)) / (n*cos(lamda)+l*cos(teta)-g) );
h= (n*sin(lamda)+l*sin(teta)) / sin(epsilon);
delta_3_dynamic= h-2400;
delta_3= delta_3_dynamic+delta_3_static;
% elastic potential energy
V_el=0.5* ( k1*(delta_1)^2 + k2*(delta_2)^2 + k3*(delta_3)^2 );
% height 1
h1= NC*cos(alpha)+n*sin(lamda)+LG1*sin(teta-5.24);
% height 2
h2= 623*sin(alpha+2.27);
% height 3
h3= 467*sin(alpha+2.79);
% gravitational potential energy
V_g= grav*(m1*h1+m2*h2+m3*h3);
V=V_el+V_g;
%%%%% dissipative function
% delta_1_dot
eta_dot= b*alpha_dot*cos(alpha_tilde-eta)/a;
a_dot= (-b*alpha_dot*sin(alpha_tilde) / cos(eta) )+ a*eta_dot*tan(eta);
delta_1_dot=a_dot;
% delta 2
gamma_dot= (m*lamda_dot*cos(lamda-gamma)+teta_dot*( l*cos(teta-gamma)+I_1*cos(tau-
gamma))) / j;
j_dot= (m*lamda_dot*cos(lamda)+l*teta_dot*cos(teta)+I_1*teta_dot*cos(tau)) / sin(gamma)
- j*gamma_dot*cot(gamma);
delta_2_dot=j_dot;
% delta 3
epsilon_dot= (n*lamda_dot*cos(lamda-epsilon)+l*teta_dot*cos(teta-epsilon)) / h;
h_dot= (n*lamda_dot*sin(lamda)+l*teta_dot*sin(teta)) / cos(epsilon) +
h*epsilon_dot*tan(epsilon);
delta_3_dot= h_dot;
D= 0.5* ( c1*delta_1_dot^2 + c2*delta_2_dot^2 + c3*delta_3_dot^2 );
%%%%% kinetic energy
% velocities
v1x= -teta_dot*LG1*cos(6.81-teta)-alpha_dot*NC*cos(alpha)-lamda_dot*n*sin(lamda);
v1y= teta_dot*LG1*sin(6.81-teta)-alpha_dot*NC*sin(alpha)+lamda_dot*n*cos(lamda);
v1= sqrt(v1x^2 + v1y^2);
v2= CG2*alpha_dot;
v3= FG3*alpha_dot;
% angular speed
omega_1= teta_dot;
omega_2= alpha_dot;
omega_3= alpha_dot;
T= 0.5*( m1*v1^2 + m2*v2^2 + m3*v3^2 +J1*omega_1^2 + J2*omega_2^2 + J3*omega_3^2 );
%%%%% virtual work
F_ext_x= F0_ext*cosd(15);
F_ext_y= -F0_ext*sind(15);
de_s_x= -NC*cos(alpha)*de_alpha - n*sin(lamda)*de_lamda - LG1*sin(teta-5.24)*de_teta -
PG1*sin(6.14-teta)*de_teta;
de_s_y= -NC*sin(alpha)*de_alpha - n*cos(lamda)*de_lamda + LG1*cos(teta-5.24)*de_teta -
PG1*cos(6.14-teta)*de_teta;
de_work= F_ext_x*de_s_x + F_ext_y*de_s_y;
%%%%% derivatives
% derivative of potential energy
d_V_teta= diff(V,teta);
d_V_lamda= diff(V,lamda);
d_V_alpha= diff(V,alpha);
% derivative of dissipative function
d_D_teta_dot= diff(D,teta_dot);
d_D_lamda_dot= diff(D,lamda_dot);
d_D_alpha_dot= diff(D,alpha_dot);
% derivative of de_work
Q_teta= diff(de_work,de_teta);
Q_lamda= diff(de_work,de_lamda);
Q_alpha= diff(de_work,de_alpha);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%% Linearization of kinematics
% delta_1
% Jacobian
d_a_teta= diff(a,teta);
d_a_lamda= diff(a,lamda);
d_a_alpha= diff(a,alpha);
% Hessian
d_d_a_teta_teta= diff( d_a_teta,teta );
d_d_a_teta_lamda= diff( d_a_teta,lamda );
d_d_a_teta_alpha= diff( d_a_teta,alpha );
d_d_a_lamda_lamda= diff( d_a_lamda,lamda );
d_d_a_lamda_teta= diff( d_a_lamda,teta );
d_d_a_lamda_alpha= diff( d_a_lamda,alpha );
d_d_a_alpha_alpha= diff( d_a_alpha,alpha );
d_d_a_alpha_teta= diff( d_a_alpha,teta );
d_d_a_alpha_lamda= diff( d_a_alpha,lamda );
% delta_2
% Jacobian
d_j_teta= diff(j,teta);
d_j_lamda= diff(j,lamda);
d_j_alpha= diff(j,alpha);
% Hessian
d_d_j_teta_teta= diff( d_j_teta,teta );
d_d_j_teta_lamda= diff( d_j_teta,lamda );
d_d_j_teta_alpha= diff( d_j_teta,alpha );
d_d_j_lamda_lamda= diff( d_j_lamda,lamda );
d_d_j_lamda_teta= diff( d_j_lamda,teta );
d_d_j_lamda_alpha= diff( d_j_lamda,alpha );
d_d_j_alpha_alpha= diff( d_j_alpha,alpha );
d_d_j_alpha_teta= diff( d_j_alpha,teta );
d_d_j_alpha_lamda= diff( d_j_alpha,lamda );
% delta_3
% Jacobian
d_h_teta= diff( h,teta );
d_h_lamda= diff( h,lamda );
d_h_alpha= diff( h,alpha );
% Hessian
d_d_h_teta_teta= diff( d_h_teta,teta );
d_d_h_teta_lamda= diff( d_h_teta,lamda );
d_d_h_teta_alpha= diff( d_h_teta,alpha );
d_d_h_lamda_lamda= diff( d_h_lamda,lamda );
d_d_h_lamda_teta= diff( d_h_lamda,teta );
d_d_h_lamda_alpha= diff( d_h_lamda,alpha );
d_d_h_alpha_alpha= diff( d_h_alpha,alpha );
d_d_h_alpha_teta= diff( d_h_alpha,teta );
d_d_h_alpha_lamda= diff( d_h_alpha,lamda );
% heights
% h1
d_h1_teta= diff( h1,teta );
d_h1_lamda= diff( h1,lamda );
d_h1_alpha= diff( h1,alpha );
% h2
d_h2_teta= diff ( h2,teta );
d_h2_lamda= diff( h2,lamda );
d_h2_alpha= diff( h2,alpha );
% h3
d_h3_teta= diff ( h3,teta );
d_h3_lamda= diff( h3,lamda );
d_h3_alpha= diff( h3,alpha );
% h1
% Hessian
d_d_h1_teta_teta= diff( d_h1_teta,teta );
d_d_h1_teta_lamda= diff( d_h1_teta,lamda );
d_d_h1_teta_alpha= diff( d_h1_teta,alpha );
d_d_h1_lamda_lamda= diff( d_h1_lamda,lamda );
d_d_h1_lamda_teta= diff( d_h1_lamda,teta );
d_d_h1_lamda_alpha= diff( d_h1_lamda,alpha );
d_d_h1_alpha_alpha= diff( d_h1_alpha,alpha );
d_d_h1_alpha_teta= diff( d_h1_alpha,teta );
d_d_h1_alpha_lamda= diff( d_h1_alpha,lamda );
% h2
% Hessian
d_d_h2_teta_teta= diff( d_h2_teta,teta );
d_d_h2_teta_lamda= diff( d_h2_teta,lamda );
d_d_h2_teta_alpha= diff( d_h2_teta,alpha );
d_d_h2_lamda_lamda= diff( d_h2_lamda,lamda );
d_d_h2_lamda_teta= diff( d_h2_lamda,teta );
d_d_h2_lamda_alpha= diff( d_h2_lamda,alpha );
d_d_h2_alpha_alpha= diff( d_h2_alpha,alpha );
d_d_h2_alpha_teta= diff( d_h2_alpha,teta );
d_d_h2_alpha_lamda= diff( d_h2_alpha,lamda );
% h3
% Hessian
d_d_h3_teta_teta= diff( d_h3_teta,teta );
d_d_h3_teta_lamda= diff( d_h3_teta,lamda );
d_d_h3_teta_alpha= diff( d_h3_teta,alpha );
d_d_h3_lamda_lamda= diff( d_h3_lamda,lamda );
d_d_h3_lamda_teta= diff( d_h3_lamda,teta );
d_d_h3_lamda_alpha= diff( d_h3_lamda,alpha );
d_d_h3_alpha_alpha= diff( d_h3_alpha,alpha );
d_d_h3_alpha_teta= diff( d_h3_alpha,teta );
d_d_h3_alpha_lamda= diff( d_h3_alpha,lamda );
Delta static
syms delta_1_static delta_2_static delta_3_static F0_ext
d_V_teta_0= LG1*grav*m1*cos(teta - 131/25) - k2*((l*sin(teta) + I_1*sin(teta -
431/100))*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2) - (((2*(l*sin(teta) + I_1*sin(teta
- 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta -
431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100)))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)))*(delta_2_static + ((m*sin(lamda)
+ l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^2 + 1)^(1/2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)) - 2175) -
k3*(l*sin(teta)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
1)^(1/2) - (((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(2*((n*sin(lamda) +
l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)))*(delta_3_static +
((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
1)^(1/2)*(n*cos(lamda) - g + l*cos(teta)) - 2400);
d_V_lamda_0= k2*((((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
(2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda)
+ l*cos(teta) + I_1*cos(teta - 431/100))^3)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta
- 431/100)))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda)
+ l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - m*sin(lamda)*((m*sin(lamda) +
l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^2 + 1)^(1/2))*(delta_2_static + ((m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
1)^(1/2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)) - 2175) -
k3*(n*sin(lamda)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
1)^(1/2) - (((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(2*((n*sin(lamda) +
l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)))*(delta_3_static +
((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
1)^(1/2)*(n*cos(lamda) - g + l*cos(teta)) - 2400) + grav*m1*n*cos(lamda);
d_V_alpha_0= grav*(623*m2*cos(alpha + 227/100) + 467*m3*cos(alpha + 279/100) -
NC*m1*sin(alpha)) - k1*(b*sin(alpha + 37/20)*((c*sin(csi) + b*sin(alpha +
37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2) - ((c*cos(csi) + b*cos(alpha
+ 37/20))*((2*b*cos(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20)))/(c*cos(csi) +
b*cos(alpha + 37/20))^2 + (2*b*sin(alpha + 37/20)*(c*sin(csi) + b*sin(alpha +
37/20))^2)/(c*cos(csi) + b*cos(alpha + 37/20))^3))/(2*((c*sin(csi) + b*sin(alpha +
37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2)))*(delta_1_static +
((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 +
1)^(1/2)*(c*cos(csi) + b*cos(alpha + 37/20)) - 3025);
Q_teta_0= -(291404338770025*F0_ext*(LG1*cos(teta - 131/25) - PG1*cos(teta -
307/50)))/1125899906842624 - (8700286382685973*F0_ext*(LG1*sin(teta - 131/25) -
PG1*sin(teta - 307/50)))/9007199254740992;
Q_lamda_0= (291404338770025*F0_ext*n*cos(lamda))/1125899906842624 -
(8700286382685973*F0_ext*n*sin(lamda))/9007199254740992;
Q_alpha_0= (291404338770025*F0_ext*NC*sin(alpha))/1125899906842624 -
(8700286382685973*F0_ext*NC*cos(alpha))/9007199254740992;
[ delta_1_static,delta_2_static,delta_3_static ]= solve (d_V_teta_0 == Q_teta_0,
d_V_lamda_0 == Q_lamda_0, d_V_alpha_0 == Q_alpha_0);
Taylor and plots
clc
clear all
close all
% Lengths
a=3025; % AB ; not constant
b=1150; % BC
EF=600;
CD=EF;
g=2500; % NG=DE
NC=1100;
FG=NC;
h=2400; % GH ; not constant
l=2500; % HL
n=2300; % NL
m=1175; % LM
j=2175; % MI_1 ; not constant
c=3100; % AC
I_1=1250; % I_1H
CG2=623;
FG3=467;
LG1=675;
PG1=2550;
% Angles (degrees)
% I_1ndependent coordinates in the static equilibrium position
alpha= 1.19; %68
teta= 6.23; %357
lamda= 4.80; %275;
%Chiusura 1
eta= 1.66; %95;
csi= 1.26; %72;
%Chiusura 2
epsilon= 4.82; %276;
rho=0;
%Chiusura 3
gamma= 6.23; %357;
tau= 1.92; %110;
tau_segnato= 1.19; %68;
% altro
grav= 9.810; % ATTENZI_1ONE ACC ESPRESSA I_1N mm/s^2
m1= 32592.248;
m2= 11952.006;
m3= 7594.776;
J1= 1486060.305; % Kg*mm^2
J2= 7.238141143645e9; % Kg*mm^2
J3= 9.581106608735e9; % Kg*mm^2
k1= 1.94e5; % ATTENZI_1ONE CAMBI_1ARE STI_1FFNESS
k2= 1.77e5;
k3= 2.32e5;
c1=0.01*k1;
c2=0.01*k2;
c3=0.01*k3;
%%%%%%%% Coefficients of the matricies
% delta_1
% Jacobian
d_a_teta_0= 0;
d_a_lamda_0= 0;
d_a_alpha_0= ((c*cos(csi) + b*cos(alpha + 37/20))*((2*b*cos(alpha + 37/20)*(c*sin(csi)
+ b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^2 + (2*b*sin(alpha +
37/20)*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha +
37/20))^3))/(2*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha +
37/20))^2 + 1)^(1/2)) - b*sin(alpha + 37/20)*((c*sin(csi) + b*sin(alpha +
37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2);
% Hessian
d_d_a_teta_teta_0= 0;
d_d_a_teta_lamda_0= 0;
d_d_a_teta_alpha_0= 0;
d_d_a_lamda_lamda_0= 0;
d_d_a_lamda_teta_0= 0;
d_d_a_lamda_alpha_0= 0;
d_d_a_alpha_alpha_0= ((c*cos(csi) + b*cos(alpha + 37/20))*((2*b^2*cos(alpha +
37/20)^2)/(c*cos(csi) + b*cos(alpha + 37/20))^2 - (2*b*sin(alpha + 37/20)*(c*sin(csi) +
b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^2 + (6*b^2*sin(alpha +
37/20)^2*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha + 37/20))^4 +
(2*b*cos(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) +
b*cos(alpha + 37/20))^3 + (8*b^2*cos(alpha + 37/20)*sin(alpha + 37/20)*(c*sin(csi) +
b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^3))/(2*((c*sin(csi) +
b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2)) - b*cos(alpha
+ 37/20)*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 +
1)^(1/2) - ((c*cos(csi) + b*cos(alpha + 37/20))*((2*b*cos(alpha + 37/20)*(c*sin(csi) +
b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^2 + (2*b*sin(alpha +
37/20)*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha +
37/20))^3)^2)/(4*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha +
37/20))^2 + 1)^(3/2)) - (b*sin(alpha + 37/20)*((2*b*cos(alpha + 37/20)*(c*sin(csi) +
b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^2 + (2*b*sin(alpha +
37/20)*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha +
37/20))^3))/((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha +
37/20))^2 + 1)^(1/2);
d_d_a_alpha_teta_0= 0;
d_d_a_alpha_lamda_0= 0;
% delta_2
% Jacobian
d_j_teta_0= (((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) +
I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 +
(2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2)*(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100)))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta
- 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) -
(l*sin(teta) + I_1*sin(teta - 431/100))*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2);
d_j_lamda_0= (((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
(2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda)
+ l*cos(teta) + I_1*cos(teta - 431/100))^3)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta
- 431/100)))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda)
+ l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - m*sin(lamda)*((m*sin(lamda) +
l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^2 + 1)^(1/2);
d_j_alpha_0= 0;
% Hessian
d_d_j_teta_teta_0= ((m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))*((2*(l*cos(teta) + I_1*cos(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) +
I_1*cos(teta - 431/100))^2 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) +
l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^3 + (6*(l*sin(teta) + I_1*sin(teta - 431/100))^2*(m*sin(lamda) + l*sin(teta)
+ I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^4
- (2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta
- 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (8*(l*sin(teta)
+ I_1*sin(teta - 431/100))*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) +
l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^3))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) -
((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) +
I_1*cos(teta - 431/100))^2 + 1)^(1/2)*(l*cos(teta) + I_1*cos(teta - 431/100)) -
(((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta
- 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 +
(2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2)^2*(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100)))/(4*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta
- 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(3/2)) -
((l*sin(teta) + I_1*sin(teta - 431/100))*((2*(l*sin(teta) + I_1*sin(teta -
431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta -
431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2))/((m*sin(lamda) + l*sin(teta) + I_1*sin(teta
- 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2);
d_d_j_teta_lamda_0= ((m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))*((2*m*cos(lamda)*(l*cos(teta) + I_1*cos(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2 + (4*m*sin(lamda)*(l*cos(teta) + I_1*cos(teta
- 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^3 + (4*m*cos(lamda)*(l*sin(teta) + I_1*sin(teta
- 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^3 + (6*m*sin(lamda)*(l*sin(teta) + I_1*sin(teta
- 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^4))/(2*((m*sin(lamda) + l*sin(teta) +
I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
1)^(1/2)) - ((l*sin(teta) + I_1*sin(teta - 431/100))*((2*m*cos(lamda)*(m*sin(lamda) +
l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^3))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) -
(m*sin(lamda)*((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) +
I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 +
(2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2))/(2*((m*sin(lamda)
+ l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^2 + 1)^(1/2)) - (((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta
- 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
(2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda)
+ l*cos(teta) + I_1*cos(teta - 431/100))^3)*((2*(l*sin(teta) + I_1*sin(teta -
431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta -
431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100)))/(4*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(3/2));
d_d_j_teta_alpha_0= 0;
d_d_j_lamda_lamda_0= ((m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))*((2*m^2*cos(lamda)^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^2 - (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
(6*m^2*sin(lamda)^2*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^4 +
(2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda)
+ l*cos(teta) + I_1*cos(teta - 431/100))^3 + (8*m^2*cos(lamda)*sin(lamda)*(m*sin(lamda)
+ l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^3))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) -
(((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda)
+ l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) +
l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^3)^2*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100)))/(4*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(3/2)) - m*cos(lamda)*((m*sin(lamda) +
l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^2 + 1)^(1/2) - (m*sin(lamda)*((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) +
I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
(2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda)
+ l*cos(teta) + I_1*cos(teta - 431/100))^3))/((m*sin(lamda) + l*sin(teta) +
I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
1)^(1/2);
d_d_j_lamda_teta_0= ((m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))*((2*m*cos(lamda)*(l*cos(teta) + I_1*cos(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2 + (4*m*sin(lamda)*(l*cos(teta) + I_1*cos(teta
- 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^3 + (4*m*cos(lamda)*(l*sin(teta) + I_1*sin(teta
- 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^3 + (6*m*sin(lamda)*(l*sin(teta) + I_1*sin(teta
- 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^4))/(2*((m*sin(lamda) + l*sin(teta) +
I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
1)^(1/2)) - ((l*sin(teta) + I_1*sin(teta - 431/100))*((2*m*cos(lamda)*(m*sin(lamda) +
l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^3))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) -
(m*sin(lamda)*((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) +
I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 +
(2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta -
431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2))/(2*((m*sin(lamda)
+ l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100))^2 + 1)^(1/2)) - (((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta
- 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 +
(2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda)
+ l*cos(teta) + I_1*cos(teta - 431/100))^3)*((2*(l*sin(teta) + I_1*sin(teta -
431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta -
431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta -
431/100)))/(4*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) +
l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(3/2));
d_d_j_lamda_alpha_0= 0;
d_d_j_alpha_alpha_0= 0;
d_d_j_alpha_teta_0= 0;
d_d_j_alpha_lamda_0= 0;
% delta 3
% Jacobian
d_h_teta_0= (((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(2*((n*sin(lamda) +
l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) -
l*sin(teta)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
1)^(1/2);
d_h_lamda_0= (((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(2*((n*sin(lamda) +
l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) -
n*sin(lamda)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
1)^(1/2);
d_h_alpha_0= 0;
% Hessian
d_d_h_teta_teta_0= ((n*cos(lamda) - g + l*cos(teta))*((2*l^2*cos(teta)^2)/(n*cos(lamda)
- g + l*cos(teta))^2 - (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^2 + (6*l^2*sin(teta)^2*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^4 + (2*l*cos(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3 + (8*l^2*cos(teta)*sin(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda)
- g + l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g +
l*cos(teta))^2 + 1)^(1/2)) - l*cos(teta)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda)
- g + l*cos(teta))^2 + 1)^(1/2) - (((2*l*cos(teta)*(n*sin(lamda) +
l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) +
l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)^2*(n*cos(lamda) - g +
l*cos(teta)))/(4*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
1)^(3/2)) - (l*sin(teta)*((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) -
g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3))/((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
1)^(1/2);
d_d_h_teta_lamda_0= ((n*cos(lamda) - g +
l*cos(teta))*((2*l*n*cos(lamda)*cos(teta))/(n*cos(lamda) - g + l*cos(teta))^2 +
(4*l*n*cos(lamda)*sin(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^3 + (4*l*n*cos(teta)*sin(lamda)*(n*sin(lamda) +
l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^3 +
(6*l*n*sin(lamda)*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^4))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2
+ 1)^(1/2)) - (l*sin(teta)*((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda)
- g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) -
g + l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g +
l*cos(teta))^2 + 1)^(1/2)) - (n*sin(lamda)*((2*l*cos(teta)*(n*sin(lamda) +
l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) +
l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3))/(2*((n*sin(lamda) +
l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) -
(((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 +
(2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3)*((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(4*((n*sin(lamda) +
l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(3/2));
d_d_h_teta_alpha_0= 0;
d_d_h_lamda_lamda_0= ((n*cos(lamda) - g +
l*cos(teta))*((2*n^2*cos(lamda)^2)/(n*cos(lamda) - g + l*cos(teta))^2 -
(2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 +
(6*n^2*sin(lamda)^2*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^4
+ (2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3 +
(8*n^2*cos(lamda)*sin(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2
+ 1)^(1/2)) - n*cos(lamda)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g +
l*cos(teta))^2 + 1)^(1/2) - (((2*n*cos(lamda)*(n*sin(lamda) +
l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) +
l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)^2*(n*cos(lamda) - g +
l*cos(teta)))/(4*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
1)^(3/2)) - (n*sin(lamda)*((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda)
- g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) -
g + l*cos(teta))^3))/((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2
+ 1)^(1/2);
d_d_h_lamda_teta_0= ((n*cos(lamda) - g +
l*cos(teta))*((2*l*n*cos(lamda)*cos(teta))/(n*cos(lamda) - g + l*cos(teta))^2 +
(4*l*n*cos(lamda)*sin(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^3 + (4*l*n*cos(teta)*sin(lamda)*(n*sin(lamda) +
l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^3 +
(6*l*n*sin(lamda)*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^4))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2
+ 1)^(1/2)) - (l*sin(teta)*((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda)
- g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) -
g + l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g +
l*cos(teta))^2 + 1)^(1/2)) - (n*sin(lamda)*((2*l*cos(teta)*(n*sin(lamda) +
l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) +
l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3))/(2*((n*sin(lamda) +
l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) -
(((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 +
(2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3)*((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g +
l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g +
l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(4*((n*sin(lamda) +
l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(3/2));
d_d_h_lamda_alpha_0= 0;
d_d_h_alpha_alpha_0= 0;
d_d_h_alpha_teta_0= 0;
d_d_h_alpha_lamda_0= 0;
% heights
% h1
% Hessian
d_d_h1_teta_teta_0= -LG1*sin(teta - 131/25);
d_d_h1_teta_lamda_0= 0;
d_d_h1_teta_alpha_0= 0;
d_d_h1_lamda_lamda_0= -n*sin(lamda);
d_d_h1_lamda_teta_0= 0;
d_d_h1_lamda_alpha_0= 0;
d_d_h1_alpha_alpha_0= -NC*cos(alpha);
d_d_h1_alpha_teta_0= 0;
d_d_h1_alpha_lamda_0= 0;
% h2
% Hessian
d_d_h2_teta_teta_0= 0;
d_d_h2_teta_lamda_0= 0;
d_d_h2_teta_alpha_0= 0;
d_d_h2_lamda_lamda_0= 0;
d_d_h2_lamda_teta_0= 0;
d_d_h2_lamda_alpha_0= 0;
d_d_h2_alpha_alpha_0= -623*sin(alpha + 227/100);
d_d_h2_alpha_teta_0= 0;
d_d_h2_alpha_lamda_0= 0;
% h3
% Hessian
d_d_h3_teta_teta_0= 0;
d_d_h3_teta_lamda_0= 0;
d_d_h3_teta_alpha_0= 0;
d_d_h3_lamda_lamda_0= 0;
d_d_h3_lamda_teta_0= 0;
d_d_h3_lamda_alpha_0= 0;
d_d_h3_alpha_alpha_0= -467*sin(alpha + 279/100);
d_d_h3_alpha_teta_0= 0;
d_d_h3_alpha_lamda_0= 0;
%%%%%%%%%%%%%%%%%%%% Stiffness matrix
Stiffness_jacobian= [ d_a_teta_0, d_a_lamda_0, d_a_alpha_0;
d_j_teta_0, d_j_lamda_0, d_j_alpha_0;
d_h_teta_0, d_h_lamda_0, d_h_alpha_0 ];
kf_vector= [ k1,k2,k3 ]; % vector of the actuator stiffnesses
Kf=diag( kf_vector );
K_el_I_1= Stiffness_jacobian'*Kf*Stiffness_jacobian;
Stiffness_hessian_1= [ d_d_a_teta_teta_0, d_d_a_teta_lamda_0, d_d_a_teta_alpha_0
d_d_a_lamda_teta_0, d_d_a_lamda_lamda_0, d_d_a_lamda_alpha_0
d_d_a_alpha_teta_0, d_d_a_alpha_lamda_0, d_d_a_alpha_alpha_0
];
Stiffness_hessian_2= [ d_d_j_teta_teta_0, d_d_j_teta_lamda_0, d_d_j_teta_alpha_0
d_d_j_lamda_teta_0, d_d_j_lamda_lamda_0, d_d_j_lamda_alpha_0
d_d_j_alpha_teta_0, d_d_j_alpha_lamda_0, d_d_j_alpha_alpha_0
];
Stiffness_hessian_3= [ d_d_h_teta_teta_0, d_d_h_teta_lamda_0, d_d_h_teta_alpha_0
d_d_h_lamda_teta_0, d_d_h_lamda_lamda_0, d_d_h_lamda_alpha_0
d_d_h_alpha_teta_0, d_d_h_alpha_lamda_0, d_d_h_alpha_alpha_0
];
delta_1_static= 51.27;
delta_2_static= 0.71;
delta_3_static= 31.81;
K_el_I_1I_1= k1*delta_1_static*Stiffness_hessian_1 +
k2*delta_2_static*Stiffness_hessian_2 + k3*delta_3_static*Stiffness_hessian_3;
Height_hessian_1= [ d_d_h1_teta_teta_0, d_d_h1_teta_lamda_0, d_d_h1_teta_alpha_0
d_d_h1_lamda_teta_0, d_d_h1_lamda_lamda_0, d_d_h1_lamda_alpha_0
d_d_h1_alpha_teta_0, d_d_h1_alpha_lamda_0, d_d_h1_alpha_alpha_0
];
Height_hessian_2= [ d_d_h2_teta_teta_0, d_d_h2_teta_lamda_0, d_d_h2_teta_alpha_0
d_d_h2_lamda_teta_0, d_d_h2_lamda_lamda_0, d_d_h2_lamda_alpha_0
d_d_h2_alpha_teta_0, d_d_h2_alpha_lamda_0, d_d_h2_alpha_alpha_0
];
Height_hessian_3= [ d_d_h3_teta_teta_0, d_d_h3_teta_lamda_0, d_d_h3_teta_alpha_0
d_d_h3_lamda_teta_0, d_d_h3_lamda_lamda_0, d_d_h3_lamda_alpha_0
d_d_h3_alpha_teta_0, d_d_h3_alpha_lamda_0, d_d_h3_alpha_alpha_0
];
K_g= grav* ( m1*Height_hessian_1 + m2*Height_hessian_2 + m3*Height_hessian_3 );
K= K_el_I_1 + K_el_I_1I_1 + K_g;
%%%%%%%%%%%%%%%%%%%% Damping matrix
Rf_vector= [ c1,c2,c3 ];
Rf= diag( Rf_vector );
R= Stiffness_jacobian'*Rf*Stiffness_jacobian;
syms teta_dot lamda_dot alpha_dot F0_ext de_alpha de_lamda de_teta
v1x= -teta_dot*LG1*cos(6.81-teta)-alpha_dot*NC*cos(alpha)-lamda_dot*n*sin(lamda);
v1y= teta_dot*LG1*sin(6.81-teta)-alpha_dot*NC*sin(alpha)+lamda_dot*n*cos(lamda);
%%%%%%% Mass Jacobian Jm
Jm_vector= [ m1,m1,m2,m3,J1,J2,J3 ];
Mf= diag( Jm_vector );
Jm= [ -LG1*cos(6.81-teta), -NC*cos(alpha), -n*sin(lamda)
LG1*sin(6.81-teta), -NC*sin(alpha), n*cos(lamda)
0, 0, CG2
0, 0, FG3
1, 0, 0
0, 0, 1
0, 0, 1 ];
M= Jm'*Mf*Jm;
%%%%%% Virtual work linearization / Force jacobian
de_s_x= -NC*cos(alpha)*de_alpha - n*sin(lamda)*de_lamda - ( LG1*sin(teta-5.24) +
PG1*sin(6.14-teta) )*de_teta;
de_s_y= -NC*sin(alpha)*de_alpha - n*cos(lamda)*de_lamda + ( LG1*cos(teta-5.24) -
PG1*cos(6.14-teta) )*de_teta;
Jf= [ -LG1*sin(teta-5.24) - PG1*sin(6.14-teta), - n*sin(lamda), -NC*cos(alpha)
LG1*cos(teta-5.24) - PG1*cos(6.14-teta), - n*cos(lamda), -NC*sin(alpha)
];
force_vector= [ F0_ext*cosd(15); -F0_ext*sind(15) ];
Q= Jf'*force_vector;
%%
%%%%%%%%%%% Natural frequencies and vibration modes
M= 1.0e+11 *[ 0.1485 -0.0479 -0.3974
-0.0479 0.3944 -0.3723
-0.3974 -0.3723 1.9553 ];
K= 1.0e+12 * [ 1.6607 -0.2285 0
-0.2285 0.2390 0
0 0 0.2513 ];
R= 1.0e+10* [ 1.6630 -0.2309 0
-0.2309 0.2392 0
0 0 0.2496 ];
A= inv(M)*K;
[ phi,natural_frequencies_squared ]= eig(A);
natural_frequencies= sqrt(natural_frequencies_squared);
%%%%%%%%%%% FRF frequency response function
F0_ext=1;
LG1=675;
alpha= 1.19; %68
teta= 6.23; %357
lamda= 4.80; %275;
PG1=2550;
n=2300;
NC=1100;
force_vector= [ F0_ext*cosd(15); -F0_ext*sind(15) ];
Jf= [ -LG1*sin(teta-5.24) - PG1*sin(6.14-teta), - n*sin(lamda), -NC*cos(alpha)
LG1*cos(teta-5.24) - PG1*cos(6.14-teta), - n*cos(lamda), -NC*sin(alpha)
];
Q= Jf'*force_vector;
max_natural_frequency=max(max(natural_frequencies));
omega=linspace(0,2*max_natural_frequency,300); % grafico fino a tre volte la
massima frequenza
length_omega=length(omega);
TETA=[];
LAMDA=[];
ALPHA=[];
for ii=1:length_omega
AA= -(omega(ii))^2*M + 1i*omega(ii)*R + K;
z_0= inv(AA)*Q;
teta_0= z_0(1);
lamda_0= z_0(2);
alpha_0= z_0(3);
TETA= [ TETA,teta_0 ];
LAMDA= [ LAMDA,lamda_0 ];
ALPHA= [ ALPHA,alpha_0 ];
end
amplitude_TETA= abs( TETA );
amplitude_LAMDA= abs( LAMDA );
amplitude_ALPHA= abs( ALPHA );
angle_TETA= angle( TETA );
angle_LAMDA= angle( LAMDA );
angle_ALPHA= angle( ALPHA );
figure(1)
plot( omega,amplitude_TETA )
title( 'amplitude teta' )
xlabel('Omega')
ylabel('FRF theta')
figure(2)
plot( omega,amplitude_LAMDA )
title( 'amplitude lamda' )
xlabel('Omega')
ylabel('FRF lambda')
figure(3)
plot( omega,amplitude_ALPHA )
title( 'amplitude alpha' )
xlabel('Omega')
ylabel('FRF alpha')
figure(4)
plot( omega,angle_TETA )
title( 'phase teta' )
xlabel('Omega')
ylabel('FRF theta')
figure(5)
plot( omega,angle_LAMDA )
title( 'phase lamda' )
xlabel('Omega')
ylabel('FRF lambda')
figure(6)
plot( omega,angle_ALPHA )
title( 'phase alpha' )
xlabel('Omega')
ylabel('FRF alpha')

Contenu connexe

Tendances

Advanced vibrations
Advanced vibrationsAdvanced vibrations
Advanced vibrations
Springer
 
16201806 bahan-ajar-ptm117-mekanika-teknik
16201806 bahan-ajar-ptm117-mekanika-teknik16201806 bahan-ajar-ptm117-mekanika-teknik
16201806 bahan-ajar-ptm117-mekanika-teknik
Dedy Wonkso
 
L5 determination of natural frequency & mode shape
L5 determination of natural frequency & mode shapeL5 determination of natural frequency & mode shape
L5 determination of natural frequency & mode shape
Sam Alalimi
 
Notes mech v
Notes mech vNotes mech v
Notes mech v
Rung Heo
 

Tendances (20)

Rotation in 3d Space: Euler Angles, Quaternions, Marix Descriptions
Rotation in 3d Space: Euler Angles, Quaternions, Marix DescriptionsRotation in 3d Space: Euler Angles, Quaternions, Marix Descriptions
Rotation in 3d Space: Euler Angles, Quaternions, Marix Descriptions
 
Advanced vibrations
Advanced vibrationsAdvanced vibrations
Advanced vibrations
 
Dynamic stiffness and eigenvalues of nonlocal nano beams
Dynamic stiffness and eigenvalues of nonlocal nano beamsDynamic stiffness and eigenvalues of nonlocal nano beams
Dynamic stiffness and eigenvalues of nonlocal nano beams
 
Su(2)xu(1) try spvmformat_forblog
Su(2)xu(1) try spvmformat_forblogSu(2)xu(1) try spvmformat_forblog
Su(2)xu(1) try spvmformat_forblog
 
Su(2)xu(1) try spvmformat_dec2018
Su(2)xu(1) try spvmformat_dec2018Su(2)xu(1) try spvmformat_dec2018
Su(2)xu(1) try spvmformat_dec2018
 
Dynamics of multiple degree of freedom linear systems
Dynamics of multiple degree of freedom linear systemsDynamics of multiple degree of freedom linear systems
Dynamics of multiple degree of freedom linear systems
 
16201806 bahan-ajar-ptm117-mekanika-teknik
16201806 bahan-ajar-ptm117-mekanika-teknik16201806 bahan-ajar-ptm117-mekanika-teknik
16201806 bahan-ajar-ptm117-mekanika-teknik
 
Approximate Methods
Approximate MethodsApproximate Methods
Approximate Methods
 
applications of second order differential equations
applications of second order differential equationsapplications of second order differential equations
applications of second order differential equations
 
Group 6 NDE project
Group 6 NDE projectGroup 6 NDE project
Group 6 NDE project
 
Stability of piles
Stability of pilesStability of piles
Stability of piles
 
2nd order ode applications
2nd order ode applications2nd order ode applications
2nd order ode applications
 
Quantum state
Quantum stateQuantum state
Quantum state
 
Multi degree of freedom systems
Multi degree of freedom systemsMulti degree of freedom systems
Multi degree of freedom systems
 
L5 determination of natural frequency & mode shape
L5 determination of natural frequency & mode shapeL5 determination of natural frequency & mode shape
L5 determination of natural frequency & mode shape
 
Mechanical system
Mechanical systemMechanical system
Mechanical system
 
Su(2)xu(1)
Su(2)xu(1)Su(2)xu(1)
Su(2)xu(1)
 
Su(2)xu(1) julaps
Su(2)xu(1) julapsSu(2)xu(1) julaps
Su(2)xu(1) julaps
 
Notes mech v
Notes mech vNotes mech v
Notes mech v
 
Stability
StabilityStability
Stability
 

Similaire à Bazzucchi-Campolmi-Zatti

REPORT SUMMARYVibration refers to a mechanical.docx
REPORT SUMMARYVibration refers to a mechanical.docxREPORT SUMMARYVibration refers to a mechanical.docx
REPORT SUMMARYVibration refers to a mechanical.docx
debishakespeare
 
From the Front LinesOur robotic equipment and its maintenanc.docx
From the Front LinesOur robotic equipment and its maintenanc.docxFrom the Front LinesOur robotic equipment and its maintenanc.docx
From the Front LinesOur robotic equipment and its maintenanc.docx
hanneloremccaffery
 
Reachability Analysis "Control Of Dynamical Non-Linear Systems"
Reachability Analysis "Control Of Dynamical Non-Linear Systems" Reachability Analysis "Control Of Dynamical Non-Linear Systems"
Reachability Analysis "Control Of Dynamical Non-Linear Systems"
M Reza Rahmati
 
Reachability Analysis Control of Non-Linear Dynamical Systems
Reachability Analysis Control of Non-Linear Dynamical SystemsReachability Analysis Control of Non-Linear Dynamical Systems
Reachability Analysis Control of Non-Linear Dynamical Systems
M Reza Rahmati
 
Wk 6 part 2 non linearites and non linearization april 05
Wk 6 part 2 non linearites and non linearization april 05Wk 6 part 2 non linearites and non linearization april 05
Wk 6 part 2 non linearites and non linearization april 05
Charlton Inao
 

Similaire à Bazzucchi-Campolmi-Zatti (20)

Equation of motion of a variable mass system3
Equation of motion of a variable mass system3Equation of motion of a variable mass system3
Equation of motion of a variable mass system3
 
Stability and pole location
Stability and pole locationStability and pole location
Stability and pole location
 
Dynamics
DynamicsDynamics
Dynamics
 
REPORT SUMMARYVibration refers to a mechanical.docx
REPORT SUMMARYVibration refers to a mechanical.docxREPORT SUMMARYVibration refers to a mechanical.docx
REPORT SUMMARYVibration refers to a mechanical.docx
 
Servo systems
Servo systemsServo systems
Servo systems
 
Week 10 part 3 pe 6282 mecchanical liquid and electrical
Week 10 part 3 pe 6282 mecchanical liquid and electricalWeek 10 part 3 pe 6282 mecchanical liquid and electrical
Week 10 part 3 pe 6282 mecchanical liquid and electrical
 
From the Front LinesOur robotic equipment and its maintenanc.docx
From the Front LinesOur robotic equipment and its maintenanc.docxFrom the Front LinesOur robotic equipment and its maintenanc.docx
From the Front LinesOur robotic equipment and its maintenanc.docx
 
Small amplitude oscillations
Small amplitude oscillationsSmall amplitude oscillations
Small amplitude oscillations
 
Reachability Analysis "Control Of Dynamical Non-Linear Systems"
Reachability Analysis "Control Of Dynamical Non-Linear Systems" Reachability Analysis "Control Of Dynamical Non-Linear Systems"
Reachability Analysis "Control Of Dynamical Non-Linear Systems"
 
Reachability Analysis Control of Non-Linear Dynamical Systems
Reachability Analysis Control of Non-Linear Dynamical SystemsReachability Analysis Control of Non-Linear Dynamical Systems
Reachability Analysis Control of Non-Linear Dynamical Systems
 
Damped and undamped motion differential equations.pptx
Damped and undamped motion differential equations.pptxDamped and undamped motion differential equations.pptx
Damped and undamped motion differential equations.pptx
 
Ball and beam
Ball and beamBall and beam
Ball and beam
 
Control Systems Assignment Help
Control Systems Assignment HelpControl Systems Assignment Help
Control Systems Assignment Help
 
2 classical field theories
2 classical field theories2 classical field theories
2 classical field theories
 
1.3428190.pdf
1.3428190.pdf1.3428190.pdf
1.3428190.pdf
 
547 Writeup
547 Writeup547 Writeup
547 Writeup
 
Transfer fn mech. systm
Transfer fn mech. systmTransfer fn mech. systm
Transfer fn mech. systm
 
PART I.5 - Physical Mathematics
PART I.5 - Physical MathematicsPART I.5 - Physical Mathematics
PART I.5 - Physical Mathematics
 
Chapter26
Chapter26Chapter26
Chapter26
 
Wk 6 part 2 non linearites and non linearization april 05
Wk 6 part 2 non linearites and non linearization april 05Wk 6 part 2 non linearites and non linearization april 05
Wk 6 part 2 non linearites and non linearization april 05
 

Bazzucchi-Campolmi-Zatti

  • 1. POLITECNICO DI MILANO Industrial Engineering department Academic year 2013-14 Bachelor’s degree in Mechanical Engineering Mechanical Vibrations year project Danieli Breda Forging Manipulator Paolo Pennacchi Francesco Ripamonti Authors: Luca Bazzucchi, 773783 Filippo Campolmi, 794252 Florian Zatti, 772672
  • 2.
  • 3. We were given the second configuration of the Danieli Forging Manipulator and we performed the kinematics modeling of the product. We decided to model the three hydraulic actuators as three different spring-damper systems, characterized by a stiffness and a damping related to their strokes thanks to the following equations. All the kinematics of the system is computed thanks to three different vectorial equations, exploiting the degrees of freedom to get elongations, angular velocities of the bodies and elongation velocities . As degrees of freedom we chose to use three rotations of rods, to get easier computation of velocities and displacements. Another way to compute kinematics is to use extension velocities of the three pistons, but this way is quite tough to compute the same results. In order to simplify all the analysis we decided to follow the first strategy.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 14. Static preloads Starting from the Lagrange equations and imposing velocities and accelerations equal to zero, since we are considering the static equilibrium position, we get the following expressions : q = (θ, λ, α) Generally we can consider external forces as a sum of 2 terms: one is a mean value, whereas the other one is a oscillating term function of time. In the static equilibrium position we neglect the second term, since we are in a steady condition. This system once solved provides us the three static preloads of the actuators. 01=-51.27 mm 02=-0.71 mm 03=-31.81 mm The static preloads of the system are the pre-compressions that the system generates in the springs to get the equilibrium position. Under these compressions the system can sustain its weight, that in this particular case is enormous, i.e. more or less 50 tons. We have a really little preload on the horizontal actuator, that have to suffer less weight with respect to the other two actuators. The two vertical actuators preloads are not so small since they are in the order of cm, since the weight is considerable, even if the oil of the pistons is quite incompressible. Linearization of the equation of motion The equations found using the Lagrange method are non linear and so the resolution of them is too difficult (we have 3 differential equations with not constant coefficients). However this formulation must be used in large displacements and solved by means of numerical integration. If we deal with small displacements, we can linearize the 3 equations of motion around the equilibrium position, making the
  • 15. solution of the system easier. So we will linearize the 4 contributions (potential energy, dissipative function, kinetic energy and Q) of the Lagrange equations. Linearization of potential energy V For a one degree of freedom system the approach is the following one: we perform the Taylor expansion of around the equilibrium position ( q=q0) , finding its first order term which is the equivalent stiffness of the linearized system in small displacements; this procedure returns two contributions: Elastic contribution : Gravitational contribution : The total equivalent stiffness is simply the sum of these 2 quantities. For a multidegree of freedom system, as in our case, the procedure is the same; the only difference is that we have matrices instead of scalar values. V= zT [K] z; The equivalent stiffness matrix becomes:
  • 16. Where:  i=1,2,3 (there are 3 actuators);  ki is the stiffness of each actuator;  mi is the mass of each body;  KF is a diagonal matrix containing the 3 actuator stiffnesses ;  Yk is a vector containing the 3 elongations 1, 2, 3;  Jk is the stiffness jacobian;  H is the hessian matrix;  0 is the static preload of the actuators. Jk θ λ α 1 0 0 1134.3 2 -1162.3 1162.3 0 3 -2477.4 -14.3 0 HΔl1 = [ ] H Δl2 = [ ] H Δl3 = [ ] Hhg1 = 1.0e+03 * [ ]
  • 17. Hhg2 = [ ] Hhg3 = [ ] K_el_I = 1.0e+12 * [ ] N/m K_el_II = 1.0e+09 * [ ] N/m K_g = 1.0e+08 * [ ] N/m [K]=[ K_el_I] + [K_el_II] + [K_g] =1.0e+12*[ ] N/m Linearization of dissipative function D The dissipative function for a multidegree of freedom system is: D = ̇k T [RF] ̇k , where:  ̇k is a vector containing the elongation velocities of the 3 actuators;  [RF] is a diagonal matrix containing the damping coefficients of the 3 actuators.
  • 18. Since ̇k = [Jk] zT (Jk is the stiffness jacobian), D becomes: D = ̇T [R] ̇ with [R] = [Jk]T [RF] [Jk]; [R]= 1.0e+10 * [ ] (N*s)/m Linearization of kinetic energy T In order to perform the linearization of the kinetic energy, we have linearized the kinematic relationships getting the following results: V1x - ̇ LG1 cos(6.81-θo) - ̇ NC cos(αo) - ̇ n sin(λo) V1y ̇ LG1 sin(6.81-θo) - ̇ NC sin(αo) + ̇ n cos(λo) ω1 ̇ V2 CG2 α̇ ω2 ̇ V3 FG3 α̇ θo, αo and λo are the values of the independent coordinates θ, λ, α at the equilibrium position. (V1)2 = (V1x)2 + (V1y)2 We have projected the velocity V1 on x and y direction to get an easier matrix representation in the mass jacobian.
  • 19. Mass jacobian JM ̇ ̇ ̇ V1x -564.6 -408.8 2291.2 V1y 369.9 -1021.2 201.2 ω1 0 0 623.0 V2 0 0 467.0 ω2 1 0 0 V3 0 0 1 ω3 0 0 1 The kinetic energy for a multidegree of freedom system is: T= ̇M T [MF] ̇M where:  ̇M is a vector containing all the velocities of the bodies in physical coordinates;  [MF] is a diagonal matrix containing masses and inertia properties of the 3 bodies; since we have considered V1x and V1y, MF becomes diag ( m1, m1, J1, m2, J2, m3, J3 ); Since ̇M = [JM] ̇, T becomes: T = ̇T [M] ̇ with [M] = [JM]T [MF] [JM]; [M] is the mass matrix. [M] = 1.0e+11 [ ] kg
  • 20. Linearization of lagrangian component Q In general an external force F(t) having non null average value can be written as the sum of two contributions:  ̅ mean value;  ̃(t) oscillatory component. For a single degree of freedom system the general expression of the Lagrangian component of the external force is: where: The first step we have performed is to project s (virtual displacement of the point in which the force is applied) on x and y direction and then we have linearized the kinematic relationships: as a consequence, the fourth expression (“equivalent stiffness Mathieu-like”) and the third one are null. Since the oscillatory component is
  • 21. not present in our external force, even the second term is null. So the only term that remains is the first one. For a multidegree of freedom system the previous considerations are still valid; the difference is that: * L = F T F = zT ( [JM] T F ) = zT QF where: F { s s } F = { } z = { θ λ α } [JM] is the force jacobian: JM θ λ α sx -335.1 2291.2 -408.8 sy -2169.3 -201.2 -1021.2 Natural frequencies and mode shapes Once we have linearized T, D, V and Q, we apply the Lagrange method and we obtain three linearized equations of motion. [M] ̈ + [R] ̇ + [K] z = Q These equations are coupled; this means that  from the mathematical point of view, we can not start solving one equation independently from the other;  from the physical point of view, the motion of a certain mass will influence the motion of the other ones. Now we can solve the system and find the solution. The first step is to calculate the natural frequencies. To do this, we will consider the unforced and undamped system: [M] ̈ + [K] z = 0
  • 22. Its solution will be: z = z0 eiωt z0 = { ̃ ̃ ̃ } Deriving z with respect to time, we obtain: ̇ = iωz0 eiωt ; ̈ = -ω2 z0 eiωt Substituting these terms inside the system: ( -ω2 [M] + [K] ) z0 eiωt = 0 since this expression must be satisfied for all values of time t ( -ω2 [M] + [K] ) z0 = 0 This is an algebraic system in which the unknown is z0. If the determinant of the coefficients matrix is different from zero, there will be only one solution, that will be the trivial one since this system is also homogenous. Trivial solution means { ̃ ̃ ̃ } = { } no vibration !!! In order to avoid this situation, we must impose that the determinant of the coefficients matrix is equal to zero and so we obtain an equation called “frequencies or characteristic equation” in which the unknown is ω. ̃, ̃, ̃ are the amplitudes of the θ, λ, α respectively
  • 23. Solving this equation, we obtain the natural frequencies of our system: ω1 = 27.3928 rad/s ω2 = 2.7260 rad/s ω3 = 1.0936 rad/s We could have used another procedure in order to get the natural frequencies: ( -ω2 [M] + [K] ) z0 = 0 -ω2 [I] + [M]-1 [K] [A] So we obtain: ω2 [I] z0 = [A] z0 [φ] = [ ] Observation: z = [φ] q This is an eigenvalue problem in which:  ω are the eigenvalues;  the eigenvectors are collected in a matrix called “φ” (mode shapes). q is the vector containing the modal coordinates
  • 24. Frequency response function We will start from the linearize equations of motion ( [M] ̈ + [R] ̇ + [K] z = Q ) and we will suppose that the external force is F = F0 e iΩt (approach with complex numbers). Q = Q0 e iΩt z = z0 eiΩt Deriving z with respect time, we obtain: ̇ =iΩz0eiΩt ; ̈ = -Ω2 z0 eiΩt This is the particular solution
  • 25. Substituting these terms inside the system: ( -Ω2 [M] + i Ω [R] + [K] ) z0 eiωt = Q0 e iΩt ( -Ω2 [M] + i Ω [R] + [K] ) z0= Q0 [A]=[A(Ω)] So: z0= [A]-1 Q0. an amplitude z0 is a complex number and hence it has a phase In the following pictures, we have considered Ω = [ 0 … 2*ω1]. Matrix of the mechanical impedence of the system
  • 27. Amplitude α When the external disturbance forces the system with a frequency Ω close to the three natural frequencies of the system, the resonance condition is reached and the amplitudes increase (as we can see from these figures). Some comments:  when Ω is equal to ω1, the amplitude of λ and α is very small with respect to the ones obtained when Ω is equal to ω2 or ω3;  the order of magnitude of the amplitudes is 10-7 ÷10-8 ;  the amplitude of α does not start from zero as it could appear.
  • 29. Phase α When we are in the resonance condition, the phase is (as it should be). From the previous considerations, we can state the these pictures are reasonable and compatible with the theory we have studied and the system we dealt with.
  • 30. Lagrange’ equations clc clear all close all syms k1 k2 k3 c csi b alpha teta lamda m l I_1 n g m1 m2 m3 J1 J2 J3 grav NC LG1 CG2 FG3 PG1 delta_1_static delta_2_static delta_3_static c1 c2 c3 lamda_dot teta_dot alpha_dot F0_ext de_alpha de_teta de_lamda %%%%% potential energy eventualmente correggere lamBa % delta_1 alpha_tilde=alpha+1.85; eta= atan( (c*sin(csi)+b*sin(alpha_tilde)) / (c*cos(csi)+b*cos(alpha_tilde)) ) + pi ; % attenzione all'arcotangente!!! va aggiunto "pi" a= (c*cos(csi)+b*cos(alpha_tilde)) / cos(eta); delta_1_dynamic= -3025 + a; % dinamico delta_1= delta_1_dynamic+delta_1_static; % delta_2 tau=teta-4.31; gamma= atan( (m*sin(lamda)+l*sin(teta)+I_1*sin(tau)) / (m*cos(lamda)+l*cos(teta)+I_1*cos(tau)) ); j= (m*sin(lamda)+l*sin(teta)+I_1*sin(tau)) / sin(gamma); delta_2_dynamic= j-2175; delta_2= delta_2_dynamic+delta_2_static; % delta_3 epsilon= atan( (n*sin(lamda)+l*sin(teta)) / (n*cos(lamda)+l*cos(teta)-g) ); h= (n*sin(lamda)+l*sin(teta)) / sin(epsilon); delta_3_dynamic= h-2400; delta_3= delta_3_dynamic+delta_3_static; % elastic potential energy V_el=0.5* ( k1*(delta_1)^2 + k2*(delta_2)^2 + k3*(delta_3)^2 ); % height 1 h1= NC*cos(alpha)+n*sin(lamda)+LG1*sin(teta-5.24); % height 2 h2= 623*sin(alpha+2.27); % height 3 h3= 467*sin(alpha+2.79); % gravitational potential energy V_g= grav*(m1*h1+m2*h2+m3*h3); V=V_el+V_g; %%%%% dissipative function % delta_1_dot eta_dot= b*alpha_dot*cos(alpha_tilde-eta)/a; a_dot= (-b*alpha_dot*sin(alpha_tilde) / cos(eta) )+ a*eta_dot*tan(eta);
  • 31. delta_1_dot=a_dot; % delta_2_dot gamma_dot= (m*lamda_dot*cos(lamda-gamma)+teta_dot*( l*cos(teta-gamma)+I_1*cos(tau- gamma))) / j; j_dot= (m*lamda_dot*cos(lamda)+l*teta_dot*cos(teta)+I_1*teta_dot*cos(tau)) / sin(gamma) - j*gamma_dot*cot(gamma); delta_2_dot=j_dot; % delta_3_dot epsilon_dot= (n*lamda_dot*cos(lamda-epsilon)+l*teta_dot*cos(teta-epsilon)) / h; h_dot= (n*lamda_dot*sin(lamda)+l*teta_dot*sin(teta)) / cos(epsilon) + h*epsilon_dot*tan(epsilon); delta_3_dot= h_dot; D= 0.5* ( c1*delta_1_dot^2 + c2*delta_2_dot^2 + c3*delta_3_dot^2 ); %%%%% kinetic energy % velocities v1x= -teta_dot*LG1*cos(6.81-teta)-alpha_dot*NC*cos(alpha)-lamda_dot*n*sin(lamda); v1y= teta_dot*LG1*sin(6.81-teta)-alpha_dot*NC*sin(alpha)+lamda_dot*n*cos(lamda); v1= sqrt(v1x^2 + v1y^2); v2= CG2*alpha_dot; v3= FG3*alpha_dot; % angular speed omega_1= teta_dot; omega_2= alpha_dot; omega_3= alpha_dot; T= 0.5*( m1*v1^2 + m2*v2^2 + m3*v3^2 +J1*omega_1^2 + J2*omega_2^2 + J3*omega_3^2 ); %%%%% virtual work % angles in degrees!!!!!!!!!!!!!!! F_ext_x= F0_ext*cosd(15); F_ext_y= -F0_ext*sind(15); de_s_x= -NC*cos(alpha)*de_alpha - n*sin(lamda)*de_lamda - LG1*sin(teta-5.24)*de_teta - PG1*sin(6.14-teta)*de_teta; de_s_y= -NC*sin(alpha)*de_alpha - n*cos(lamda)*de_lamda + LG1*cos(teta-5.24)*de_teta - PG1*cos(6.14-teta)*de_teta; de_work= F_ext_x*de_s_x + F_ext_y*de_s_y; % da derivare rispetto ai de_... %%%%% derivatives % derivative of potential energy d_V_teta= diff(V,teta); d_V_lamda= diff(V,lamda); d_V_alpha= diff(V,alpha); % derivative of dissipative function d_D_teta_dot= diff(D,teta_dot); d_D_lamda_dot= diff(D,lamda_dot); d_D_alpha_dot= diff(D,alpha_dot); % derivative of de_work Q_teta= diff(de_work,de_teta);
  • 32. Q_lamda= diff(de_work,de_lamda); Q_alpha= diff(de_work,de_alpha); % derivative of kinetic energy d_T_teta= diff( T,teta ); d_T_lamda= diff( T,lamda ); d_T_alpha= diff( T,alpha ); d_T_teta_dot= diff( T,teta_dot ); d_T_lamda_dot= diff( T,lamda_dot ); d_T_alpha_dot= diff( T,alpha_dot ); %% clc clear all close all syms t k1 k2 k3 c csi teta alpha lamda lamba_dot(t) alpha_dot(t) teta_dot(t) b m l I_1 n g m1 m2 m3 J1 J2 J3 grav NC LG1 CG2 FG3 PG1 delta_1_static delta_2_static delta_3_static c1 c2 c3 lamda_dot teta_dot alpha_dot F0_ext de_alpha de_teta de_lamda d_T_teta_dot=J1*teta_dot + (m1*(2*LG1*cos(teta - 681/100)*(lamda_dot*n*sin(lamda) + LG1*teta_dot*cos(teta - 681/100) + NC*alpha_dot*cos(alpha)) + 2*LG1*sin(teta - 681/100)*(LG1*teta_dot*sin(teta - 681/100) - lamda_dot*n*cos(lamda) + NC*alpha_dot*sin(alpha))))/2; d_T_lamba_dot=(m1*(2*n*sin(lamda)*(lamda_dot*n*sin(lamda) + LG1*teta_dot*cos(teta - 681/100) + NC*alpha_dot*cos(alpha)) - 2*n*cos(lamda)*(LG1*teta_dot*sin(teta - 681/100) - lamda_dot*n*cos(lamda) + NC*alpha_dot*sin(alpha))))/2; d_T_alpha_dot=alpha_dot*m2*CG2^2 + alpha_dot*m3*FG3^2 + J2*alpha_dot + J3*alpha_dot + (m1*(2*NC*cos(alpha)*(lamda_dot*n*sin(lamda) + LG1*teta_dot*cos(teta - 681/100) + NC*alpha_dot*cos(alpha)) + 2*NC*sin(alpha)*(LG1*teta_dot*sin(teta - 681/100) - lamda_dot*n*cos(lamda) + NC*alpha_dot*sin(alpha))))/2; % derivative of kinetic energy with respect of time d_T_teta_dot_t = diff ( d_T_teta_dot,t ); d_T_lamda_dot_t = diff ( d_T_lamba_dot,t ); d_T_alpha_dot_t = diff ( d_T_alpha_dot,t ); Linearization clc clear all close all
  • 33. syms k1 k2 k3 c csi b alpha teta lamda m l I_1 n g m1 m2 m3 J1 J2 J3 grav NC LG1 CG2 FG3 PG1 delta_1_static delta_2_static delta_3_static c1 c2 c3 lamda_dot teta_dot alpha_dot F0_ext de_alpha de_teta de_lamda %%%%% potential energy % delta_1 alpha_tilde=alpha+1.85; eta= atan( (c*sin(csi)+b*sin(alpha_tilde)) / (c*cos(csi)+b*cos(alpha_tilde)) ); a= (c*cos(csi)+b*cos(alpha_tilde)) / cos(eta); delta_1_dynamic= -3025 + a; % dinamico delta_1= delta_1_dynamic+delta_1_static; % delta_2 tau=teta-4.31; gamma= atan( (m*sin(lamda)+l*sin(teta)+I_1*sin(tau)) / (m*cos(lamda)+l*cos(teta)+I_1*cos(tau)) ); j= (m*sin(lamda)+l*sin(teta)+I_1*sin(tau)) / sin(gamma); delta_2_dynamic= j-2175; delta_2= delta_2_dynamic+delta_2_static; % delta_3 epsilon= atan( (n*sin(lamda)+l*sin(teta)) / (n*cos(lamda)+l*cos(teta)-g) ); h= (n*sin(lamda)+l*sin(teta)) / sin(epsilon); delta_3_dynamic= h-2400; delta_3= delta_3_dynamic+delta_3_static; % elastic potential energy V_el=0.5* ( k1*(delta_1)^2 + k2*(delta_2)^2 + k3*(delta_3)^2 ); % height 1 h1= NC*cos(alpha)+n*sin(lamda)+LG1*sin(teta-5.24); % height 2 h2= 623*sin(alpha+2.27); % height 3 h3= 467*sin(alpha+2.79); % gravitational potential energy V_g= grav*(m1*h1+m2*h2+m3*h3); V=V_el+V_g; %%%%% dissipative function % delta_1_dot eta_dot= b*alpha_dot*cos(alpha_tilde-eta)/a; a_dot= (-b*alpha_dot*sin(alpha_tilde) / cos(eta) )+ a*eta_dot*tan(eta); delta_1_dot=a_dot; % delta 2 gamma_dot= (m*lamda_dot*cos(lamda-gamma)+teta_dot*( l*cos(teta-gamma)+I_1*cos(tau- gamma))) / j; j_dot= (m*lamda_dot*cos(lamda)+l*teta_dot*cos(teta)+I_1*teta_dot*cos(tau)) / sin(gamma) - j*gamma_dot*cot(gamma); delta_2_dot=j_dot; % delta 3
  • 34. epsilon_dot= (n*lamda_dot*cos(lamda-epsilon)+l*teta_dot*cos(teta-epsilon)) / h; h_dot= (n*lamda_dot*sin(lamda)+l*teta_dot*sin(teta)) / cos(epsilon) + h*epsilon_dot*tan(epsilon); delta_3_dot= h_dot; D= 0.5* ( c1*delta_1_dot^2 + c2*delta_2_dot^2 + c3*delta_3_dot^2 ); %%%%% kinetic energy % velocities v1x= -teta_dot*LG1*cos(6.81-teta)-alpha_dot*NC*cos(alpha)-lamda_dot*n*sin(lamda); v1y= teta_dot*LG1*sin(6.81-teta)-alpha_dot*NC*sin(alpha)+lamda_dot*n*cos(lamda); v1= sqrt(v1x^2 + v1y^2); v2= CG2*alpha_dot; v3= FG3*alpha_dot; % angular speed omega_1= teta_dot; omega_2= alpha_dot; omega_3= alpha_dot; T= 0.5*( m1*v1^2 + m2*v2^2 + m3*v3^2 +J1*omega_1^2 + J2*omega_2^2 + J3*omega_3^2 ); %%%%% virtual work F_ext_x= F0_ext*cosd(15); F_ext_y= -F0_ext*sind(15); de_s_x= -NC*cos(alpha)*de_alpha - n*sin(lamda)*de_lamda - LG1*sin(teta-5.24)*de_teta - PG1*sin(6.14-teta)*de_teta; de_s_y= -NC*sin(alpha)*de_alpha - n*cos(lamda)*de_lamda + LG1*cos(teta-5.24)*de_teta - PG1*cos(6.14-teta)*de_teta; de_work= F_ext_x*de_s_x + F_ext_y*de_s_y; %%%%% derivatives % derivative of potential energy d_V_teta= diff(V,teta); d_V_lamda= diff(V,lamda); d_V_alpha= diff(V,alpha); % derivative of dissipative function d_D_teta_dot= diff(D,teta_dot); d_D_lamda_dot= diff(D,lamda_dot); d_D_alpha_dot= diff(D,alpha_dot); % derivative of de_work Q_teta= diff(de_work,de_teta); Q_lamda= diff(de_work,de_lamda); Q_alpha= diff(de_work,de_alpha); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%% Linearization of kinematics
  • 35. % delta_1 % Jacobian d_a_teta= diff(a,teta); d_a_lamda= diff(a,lamda); d_a_alpha= diff(a,alpha); % Hessian d_d_a_teta_teta= diff( d_a_teta,teta ); d_d_a_teta_lamda= diff( d_a_teta,lamda ); d_d_a_teta_alpha= diff( d_a_teta,alpha ); d_d_a_lamda_lamda= diff( d_a_lamda,lamda ); d_d_a_lamda_teta= diff( d_a_lamda,teta ); d_d_a_lamda_alpha= diff( d_a_lamda,alpha ); d_d_a_alpha_alpha= diff( d_a_alpha,alpha ); d_d_a_alpha_teta= diff( d_a_alpha,teta ); d_d_a_alpha_lamda= diff( d_a_alpha,lamda ); % delta_2 % Jacobian d_j_teta= diff(j,teta); d_j_lamda= diff(j,lamda); d_j_alpha= diff(j,alpha); % Hessian d_d_j_teta_teta= diff( d_j_teta,teta ); d_d_j_teta_lamda= diff( d_j_teta,lamda ); d_d_j_teta_alpha= diff( d_j_teta,alpha ); d_d_j_lamda_lamda= diff( d_j_lamda,lamda ); d_d_j_lamda_teta= diff( d_j_lamda,teta ); d_d_j_lamda_alpha= diff( d_j_lamda,alpha ); d_d_j_alpha_alpha= diff( d_j_alpha,alpha ); d_d_j_alpha_teta= diff( d_j_alpha,teta ); d_d_j_alpha_lamda= diff( d_j_alpha,lamda ); % delta_3 % Jacobian d_h_teta= diff( h,teta ); d_h_lamda= diff( h,lamda ); d_h_alpha= diff( h,alpha ); % Hessian d_d_h_teta_teta= diff( d_h_teta,teta ); d_d_h_teta_lamda= diff( d_h_teta,lamda ); d_d_h_teta_alpha= diff( d_h_teta,alpha ); d_d_h_lamda_lamda= diff( d_h_lamda,lamda ); d_d_h_lamda_teta= diff( d_h_lamda,teta ); d_d_h_lamda_alpha= diff( d_h_lamda,alpha ); d_d_h_alpha_alpha= diff( d_h_alpha,alpha ); d_d_h_alpha_teta= diff( d_h_alpha,teta ); d_d_h_alpha_lamda= diff( d_h_alpha,lamda );
  • 36. % heights % h1 d_h1_teta= diff( h1,teta ); d_h1_lamda= diff( h1,lamda ); d_h1_alpha= diff( h1,alpha ); % h2 d_h2_teta= diff ( h2,teta ); d_h2_lamda= diff( h2,lamda ); d_h2_alpha= diff( h2,alpha ); % h3 d_h3_teta= diff ( h3,teta ); d_h3_lamda= diff( h3,lamda ); d_h3_alpha= diff( h3,alpha ); % h1 % Hessian d_d_h1_teta_teta= diff( d_h1_teta,teta ); d_d_h1_teta_lamda= diff( d_h1_teta,lamda ); d_d_h1_teta_alpha= diff( d_h1_teta,alpha ); d_d_h1_lamda_lamda= diff( d_h1_lamda,lamda ); d_d_h1_lamda_teta= diff( d_h1_lamda,teta ); d_d_h1_lamda_alpha= diff( d_h1_lamda,alpha ); d_d_h1_alpha_alpha= diff( d_h1_alpha,alpha ); d_d_h1_alpha_teta= diff( d_h1_alpha,teta ); d_d_h1_alpha_lamda= diff( d_h1_alpha,lamda ); % h2 % Hessian d_d_h2_teta_teta= diff( d_h2_teta,teta ); d_d_h2_teta_lamda= diff( d_h2_teta,lamda ); d_d_h2_teta_alpha= diff( d_h2_teta,alpha ); d_d_h2_lamda_lamda= diff( d_h2_lamda,lamda ); d_d_h2_lamda_teta= diff( d_h2_lamda,teta ); d_d_h2_lamda_alpha= diff( d_h2_lamda,alpha ); d_d_h2_alpha_alpha= diff( d_h2_alpha,alpha ); d_d_h2_alpha_teta= diff( d_h2_alpha,teta ); d_d_h2_alpha_lamda= diff( d_h2_alpha,lamda ); % h3 % Hessian d_d_h3_teta_teta= diff( d_h3_teta,teta ); d_d_h3_teta_lamda= diff( d_h3_teta,lamda ); d_d_h3_teta_alpha= diff( d_h3_teta,alpha ); d_d_h3_lamda_lamda= diff( d_h3_lamda,lamda ); d_d_h3_lamda_teta= diff( d_h3_lamda,teta ); d_d_h3_lamda_alpha= diff( d_h3_lamda,alpha ); d_d_h3_alpha_alpha= diff( d_h3_alpha,alpha ); d_d_h3_alpha_teta= diff( d_h3_alpha,teta ); d_d_h3_alpha_lamda= diff( d_h3_alpha,lamda );
  • 37. Delta static syms delta_1_static delta_2_static delta_3_static F0_ext d_V_teta_0= LG1*grav*m1*cos(teta - 131/25) - k2*((l*sin(teta) + I_1*sin(teta - 431/100))*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2) - (((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)))*(delta_2_static + ((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)) - 2175) - k3*(l*sin(teta)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2) - (((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)))*(delta_3_static + ((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)*(n*cos(lamda) - g + l*cos(teta)) - 2400); d_V_lamda_0= k2*((((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - m*sin(lamda)*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2))*(delta_2_static + ((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)) - 2175) - k3*(n*sin(lamda)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2) - (((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)))*(delta_3_static + ((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)*(n*cos(lamda) - g + l*cos(teta)) - 2400) + grav*m1*n*cos(lamda); d_V_alpha_0= grav*(623*m2*cos(alpha + 227/100) + 467*m3*cos(alpha + 279/100) - NC*m1*sin(alpha)) - k1*(b*sin(alpha + 37/20)*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2) - ((c*cos(csi) + b*cos(alpha + 37/20))*((2*b*cos(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^2 + (2*b*sin(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha + 37/20))^3))/(2*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2)))*(delta_1_static + ((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2)*(c*cos(csi) + b*cos(alpha + 37/20)) - 3025); Q_teta_0= -(291404338770025*F0_ext*(LG1*cos(teta - 131/25) - PG1*cos(teta - 307/50)))/1125899906842624 - (8700286382685973*F0_ext*(LG1*sin(teta - 131/25) - PG1*sin(teta - 307/50)))/9007199254740992; Q_lamda_0= (291404338770025*F0_ext*n*cos(lamda))/1125899906842624 - (8700286382685973*F0_ext*n*sin(lamda))/9007199254740992; Q_alpha_0= (291404338770025*F0_ext*NC*sin(alpha))/1125899906842624 - (8700286382685973*F0_ext*NC*cos(alpha))/9007199254740992; [ delta_1_static,delta_2_static,delta_3_static ]= solve (d_V_teta_0 == Q_teta_0, d_V_lamda_0 == Q_lamda_0, d_V_alpha_0 == Q_alpha_0);
  • 38. Taylor and plots clc clear all close all % Lengths a=3025; % AB ; not constant b=1150; % BC EF=600; CD=EF; g=2500; % NG=DE NC=1100; FG=NC; h=2400; % GH ; not constant l=2500; % HL n=2300; % NL m=1175; % LM j=2175; % MI_1 ; not constant c=3100; % AC I_1=1250; % I_1H CG2=623; FG3=467; LG1=675; PG1=2550; % Angles (degrees) % I_1ndependent coordinates in the static equilibrium position alpha= 1.19; %68 teta= 6.23; %357 lamda= 4.80; %275; %Chiusura 1 eta= 1.66; %95; csi= 1.26; %72; %Chiusura 2 epsilon= 4.82; %276; rho=0; %Chiusura 3 gamma= 6.23; %357; tau= 1.92; %110; tau_segnato= 1.19; %68; % altro grav= 9.810; % ATTENZI_1ONE ACC ESPRESSA I_1N mm/s^2 m1= 32592.248; m2= 11952.006; m3= 7594.776; J1= 1486060.305; % Kg*mm^2 J2= 7.238141143645e9; % Kg*mm^2 J3= 9.581106608735e9; % Kg*mm^2 k1= 1.94e5; % ATTENZI_1ONE CAMBI_1ARE STI_1FFNESS k2= 1.77e5; k3= 2.32e5; c1=0.01*k1; c2=0.01*k2; c3=0.01*k3;
  • 39. %%%%%%%% Coefficients of the matricies % delta_1 % Jacobian d_a_teta_0= 0; d_a_lamda_0= 0; d_a_alpha_0= ((c*cos(csi) + b*cos(alpha + 37/20))*((2*b*cos(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^2 + (2*b*sin(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha + 37/20))^3))/(2*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2)) - b*sin(alpha + 37/20)*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2); % Hessian d_d_a_teta_teta_0= 0; d_d_a_teta_lamda_0= 0; d_d_a_teta_alpha_0= 0; d_d_a_lamda_lamda_0= 0; d_d_a_lamda_teta_0= 0; d_d_a_lamda_alpha_0= 0; d_d_a_alpha_alpha_0= ((c*cos(csi) + b*cos(alpha + 37/20))*((2*b^2*cos(alpha + 37/20)^2)/(c*cos(csi) + b*cos(alpha + 37/20))^2 - (2*b*sin(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^2 + (6*b^2*sin(alpha + 37/20)^2*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha + 37/20))^4 + (2*b*cos(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha + 37/20))^3 + (8*b^2*cos(alpha + 37/20)*sin(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^3))/(2*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2)) - b*cos(alpha + 37/20)*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2) - ((c*cos(csi) + b*cos(alpha + 37/20))*((2*b*cos(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^2 + (2*b*sin(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha + 37/20))^3)^2)/(4*((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(3/2)) - (b*sin(alpha + 37/20)*((2*b*cos(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20)))/(c*cos(csi) + b*cos(alpha + 37/20))^2 + (2*b*sin(alpha + 37/20)*(c*sin(csi) + b*sin(alpha + 37/20))^2)/(c*cos(csi) + b*cos(alpha + 37/20))^3))/((c*sin(csi) + b*sin(alpha + 37/20))^2/(c*cos(csi) + b*cos(alpha + 37/20))^2 + 1)^(1/2); d_d_a_alpha_teta_0= 0; d_d_a_alpha_lamda_0= 0; % delta_2 % Jacobian d_j_teta_0= (((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - (l*sin(teta) + I_1*sin(teta - 431/100))*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2); d_j_lamda_0= (((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - m*sin(lamda)*((m*sin(lamda) +
  • 40. l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2); d_j_alpha_0= 0; % Hessian d_d_j_teta_teta_0= ((m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))*((2*(l*cos(teta) + I_1*cos(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (6*(l*sin(teta) + I_1*sin(teta - 431/100))^2*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^4 - (2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (8*(l*sin(teta) + I_1*sin(teta - 431/100))*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - ((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)*(l*cos(teta) + I_1*cos(teta - 431/100)) - (((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2)^2*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)))/(4*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(3/2)) - ((l*sin(teta) + I_1*sin(teta - 431/100))*((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2))/((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2); d_d_j_teta_lamda_0= ((m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))*((2*m*cos(lamda)*(l*cos(teta) + I_1*cos(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (4*m*sin(lamda)*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (4*m*cos(lamda)*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (6*m*sin(lamda)*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^4))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - ((l*sin(teta) + I_1*sin(teta - 431/100))*((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - (m*sin(lamda)*((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - (((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3)*((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)))/(4*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(3/2)); d_d_j_teta_alpha_0= 0;
  • 41. d_d_j_lamda_lamda_0= ((m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))*((2*m^2*cos(lamda)^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 - (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (6*m^2*sin(lamda)^2*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^4 + (2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (8*m^2*cos(lamda)*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - (((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3)^2*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)))/(4*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(3/2)) - m*cos(lamda)*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2) - (m*sin(lamda)*((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3))/((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2); d_d_j_lamda_teta_0= ((m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))*((2*m*cos(lamda)*(l*cos(teta) + I_1*cos(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (4*m*sin(lamda)*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (4*m*cos(lamda)*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (6*m*sin(lamda)*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^4))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - ((l*sin(teta) + I_1*sin(teta - 431/100))*((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - (m*sin(lamda)*((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2))/(2*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(1/2)) - (((2*m*cos(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + (2*m*sin(lamda)*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3)*((2*(l*sin(teta) + I_1*sin(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2)/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^3 + (2*(l*cos(teta) + I_1*cos(teta - 431/100))*(m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100)))/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2)*(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100)))/(4*((m*sin(lamda) + l*sin(teta) + I_1*sin(teta - 431/100))^2/(m*cos(lamda) + l*cos(teta) + I_1*cos(teta - 431/100))^2 + 1)^(3/2)); d_d_j_lamda_alpha_0= 0; d_d_j_alpha_alpha_0= 0; d_d_j_alpha_teta_0= 0; d_d_j_alpha_lamda_0= 0; % delta 3 % Jacobian
  • 42. d_h_teta_0= (((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - l*sin(teta)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2); d_h_lamda_0= (((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - n*sin(lamda)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2); d_h_alpha_0= 0; % Hessian d_d_h_teta_teta_0= ((n*cos(lamda) - g + l*cos(teta))*((2*l^2*cos(teta)^2)/(n*cos(lamda) - g + l*cos(teta))^2 - (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (6*l^2*sin(teta)^2*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^4 + (2*l*cos(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3 + (8*l^2*cos(teta)*sin(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - l*cos(teta)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2) - (((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)^2*(n*cos(lamda) - g + l*cos(teta)))/(4*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(3/2)) - (l*sin(teta)*((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3))/((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2); d_d_h_teta_lamda_0= ((n*cos(lamda) - g + l*cos(teta))*((2*l*n*cos(lamda)*cos(teta))/(n*cos(lamda) - g + l*cos(teta))^2 + (4*l*n*cos(lamda)*sin(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^3 + (4*l*n*cos(teta)*sin(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^3 + (6*l*n*sin(lamda)*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^4))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - (l*sin(teta)*((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - (n*sin(lamda)*((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - (((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)*((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(4*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(3/2)); d_d_h_teta_alpha_0= 0; d_d_h_lamda_lamda_0= ((n*cos(lamda) - g + l*cos(teta))*((2*n^2*cos(lamda)^2)/(n*cos(lamda) - g + l*cos(teta))^2 - (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (6*n^2*sin(lamda)^2*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^4 + (2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3 + (8*n^2*cos(lamda)*sin(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - n*cos(lamda)*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2) - (((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)^2*(n*cos(lamda) - g + l*cos(teta)))/(4*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 +
  • 43. 1)^(3/2)) - (n*sin(lamda)*((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3))/((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2); d_d_h_lamda_teta_0= ((n*cos(lamda) - g + l*cos(teta))*((2*l*n*cos(lamda)*cos(teta))/(n*cos(lamda) - g + l*cos(teta))^2 + (4*l*n*cos(lamda)*sin(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^3 + (4*l*n*cos(teta)*sin(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^3 + (6*l*n*sin(lamda)*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^4))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - (l*sin(teta)*((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - (n*sin(lamda)*((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3))/(2*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(1/2)) - (((2*n*cos(lamda)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*n*sin(lamda)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)*((2*l*cos(teta)*(n*sin(lamda) + l*sin(teta)))/(n*cos(lamda) - g + l*cos(teta))^2 + (2*l*sin(teta)*(n*sin(lamda) + l*sin(teta))^2)/(n*cos(lamda) - g + l*cos(teta))^3)*(n*cos(lamda) - g + l*cos(teta)))/(4*((n*sin(lamda) + l*sin(teta))^2/(n*cos(lamda) - g + l*cos(teta))^2 + 1)^(3/2)); d_d_h_lamda_alpha_0= 0; d_d_h_alpha_alpha_0= 0; d_d_h_alpha_teta_0= 0; d_d_h_alpha_lamda_0= 0; % heights % h1 % Hessian d_d_h1_teta_teta_0= -LG1*sin(teta - 131/25); d_d_h1_teta_lamda_0= 0; d_d_h1_teta_alpha_0= 0; d_d_h1_lamda_lamda_0= -n*sin(lamda); d_d_h1_lamda_teta_0= 0; d_d_h1_lamda_alpha_0= 0; d_d_h1_alpha_alpha_0= -NC*cos(alpha); d_d_h1_alpha_teta_0= 0; d_d_h1_alpha_lamda_0= 0; % h2 % Hessian d_d_h2_teta_teta_0= 0; d_d_h2_teta_lamda_0= 0; d_d_h2_teta_alpha_0= 0; d_d_h2_lamda_lamda_0= 0; d_d_h2_lamda_teta_0= 0; d_d_h2_lamda_alpha_0= 0; d_d_h2_alpha_alpha_0= -623*sin(alpha + 227/100); d_d_h2_alpha_teta_0= 0; d_d_h2_alpha_lamda_0= 0; % h3 % Hessian d_d_h3_teta_teta_0= 0;
  • 44. d_d_h3_teta_lamda_0= 0; d_d_h3_teta_alpha_0= 0; d_d_h3_lamda_lamda_0= 0; d_d_h3_lamda_teta_0= 0; d_d_h3_lamda_alpha_0= 0; d_d_h3_alpha_alpha_0= -467*sin(alpha + 279/100); d_d_h3_alpha_teta_0= 0; d_d_h3_alpha_lamda_0= 0; %%%%%%%%%%%%%%%%%%%% Stiffness matrix Stiffness_jacobian= [ d_a_teta_0, d_a_lamda_0, d_a_alpha_0; d_j_teta_0, d_j_lamda_0, d_j_alpha_0; d_h_teta_0, d_h_lamda_0, d_h_alpha_0 ]; kf_vector= [ k1,k2,k3 ]; % vector of the actuator stiffnesses Kf=diag( kf_vector ); K_el_I_1= Stiffness_jacobian'*Kf*Stiffness_jacobian; Stiffness_hessian_1= [ d_d_a_teta_teta_0, d_d_a_teta_lamda_0, d_d_a_teta_alpha_0 d_d_a_lamda_teta_0, d_d_a_lamda_lamda_0, d_d_a_lamda_alpha_0 d_d_a_alpha_teta_0, d_d_a_alpha_lamda_0, d_d_a_alpha_alpha_0 ]; Stiffness_hessian_2= [ d_d_j_teta_teta_0, d_d_j_teta_lamda_0, d_d_j_teta_alpha_0 d_d_j_lamda_teta_0, d_d_j_lamda_lamda_0, d_d_j_lamda_alpha_0 d_d_j_alpha_teta_0, d_d_j_alpha_lamda_0, d_d_j_alpha_alpha_0 ]; Stiffness_hessian_3= [ d_d_h_teta_teta_0, d_d_h_teta_lamda_0, d_d_h_teta_alpha_0 d_d_h_lamda_teta_0, d_d_h_lamda_lamda_0, d_d_h_lamda_alpha_0 d_d_h_alpha_teta_0, d_d_h_alpha_lamda_0, d_d_h_alpha_alpha_0 ]; delta_1_static= 51.27; delta_2_static= 0.71; delta_3_static= 31.81; K_el_I_1I_1= k1*delta_1_static*Stiffness_hessian_1 + k2*delta_2_static*Stiffness_hessian_2 + k3*delta_3_static*Stiffness_hessian_3; Height_hessian_1= [ d_d_h1_teta_teta_0, d_d_h1_teta_lamda_0, d_d_h1_teta_alpha_0 d_d_h1_lamda_teta_0, d_d_h1_lamda_lamda_0, d_d_h1_lamda_alpha_0
  • 45. d_d_h1_alpha_teta_0, d_d_h1_alpha_lamda_0, d_d_h1_alpha_alpha_0 ]; Height_hessian_2= [ d_d_h2_teta_teta_0, d_d_h2_teta_lamda_0, d_d_h2_teta_alpha_0 d_d_h2_lamda_teta_0, d_d_h2_lamda_lamda_0, d_d_h2_lamda_alpha_0 d_d_h2_alpha_teta_0, d_d_h2_alpha_lamda_0, d_d_h2_alpha_alpha_0 ]; Height_hessian_3= [ d_d_h3_teta_teta_0, d_d_h3_teta_lamda_0, d_d_h3_teta_alpha_0 d_d_h3_lamda_teta_0, d_d_h3_lamda_lamda_0, d_d_h3_lamda_alpha_0 d_d_h3_alpha_teta_0, d_d_h3_alpha_lamda_0, d_d_h3_alpha_alpha_0 ]; K_g= grav* ( m1*Height_hessian_1 + m2*Height_hessian_2 + m3*Height_hessian_3 ); K= K_el_I_1 + K_el_I_1I_1 + K_g; %%%%%%%%%%%%%%%%%%%% Damping matrix Rf_vector= [ c1,c2,c3 ]; Rf= diag( Rf_vector ); R= Stiffness_jacobian'*Rf*Stiffness_jacobian; syms teta_dot lamda_dot alpha_dot F0_ext de_alpha de_lamda de_teta v1x= -teta_dot*LG1*cos(6.81-teta)-alpha_dot*NC*cos(alpha)-lamda_dot*n*sin(lamda); v1y= teta_dot*LG1*sin(6.81-teta)-alpha_dot*NC*sin(alpha)+lamda_dot*n*cos(lamda); %%%%%%% Mass Jacobian Jm Jm_vector= [ m1,m1,m2,m3,J1,J2,J3 ]; Mf= diag( Jm_vector ); Jm= [ -LG1*cos(6.81-teta), -NC*cos(alpha), -n*sin(lamda) LG1*sin(6.81-teta), -NC*sin(alpha), n*cos(lamda) 0, 0, CG2 0, 0, FG3 1, 0, 0 0, 0, 1 0, 0, 1 ]; M= Jm'*Mf*Jm;
  • 46. %%%%%% Virtual work linearization / Force jacobian de_s_x= -NC*cos(alpha)*de_alpha - n*sin(lamda)*de_lamda - ( LG1*sin(teta-5.24) + PG1*sin(6.14-teta) )*de_teta; de_s_y= -NC*sin(alpha)*de_alpha - n*cos(lamda)*de_lamda + ( LG1*cos(teta-5.24) - PG1*cos(6.14-teta) )*de_teta; Jf= [ -LG1*sin(teta-5.24) - PG1*sin(6.14-teta), - n*sin(lamda), -NC*cos(alpha) LG1*cos(teta-5.24) - PG1*cos(6.14-teta), - n*cos(lamda), -NC*sin(alpha) ]; force_vector= [ F0_ext*cosd(15); -F0_ext*sind(15) ]; Q= Jf'*force_vector; %% %%%%%%%%%%% Natural frequencies and vibration modes M= 1.0e+11 *[ 0.1485 -0.0479 -0.3974 -0.0479 0.3944 -0.3723 -0.3974 -0.3723 1.9553 ]; K= 1.0e+12 * [ 1.6607 -0.2285 0 -0.2285 0.2390 0 0 0 0.2513 ]; R= 1.0e+10* [ 1.6630 -0.2309 0 -0.2309 0.2392 0 0 0 0.2496 ]; A= inv(M)*K; [ phi,natural_frequencies_squared ]= eig(A); natural_frequencies= sqrt(natural_frequencies_squared); %%%%%%%%%%% FRF frequency response function F0_ext=1; LG1=675; alpha= 1.19; %68 teta= 6.23; %357 lamda= 4.80; %275; PG1=2550; n=2300; NC=1100; force_vector= [ F0_ext*cosd(15); -F0_ext*sind(15) ]; Jf= [ -LG1*sin(teta-5.24) - PG1*sin(6.14-teta), - n*sin(lamda), -NC*cos(alpha) LG1*cos(teta-5.24) - PG1*cos(6.14-teta), - n*cos(lamda), -NC*sin(alpha) ]; Q= Jf'*force_vector; max_natural_frequency=max(max(natural_frequencies)); omega=linspace(0,2*max_natural_frequency,300); % grafico fino a tre volte la massima frequenza length_omega=length(omega); TETA=[]; LAMDA=[];
  • 47. ALPHA=[]; for ii=1:length_omega AA= -(omega(ii))^2*M + 1i*omega(ii)*R + K; z_0= inv(AA)*Q; teta_0= z_0(1); lamda_0= z_0(2); alpha_0= z_0(3); TETA= [ TETA,teta_0 ]; LAMDA= [ LAMDA,lamda_0 ]; ALPHA= [ ALPHA,alpha_0 ]; end amplitude_TETA= abs( TETA ); amplitude_LAMDA= abs( LAMDA ); amplitude_ALPHA= abs( ALPHA ); angle_TETA= angle( TETA ); angle_LAMDA= angle( LAMDA ); angle_ALPHA= angle( ALPHA ); figure(1) plot( omega,amplitude_TETA ) title( 'amplitude teta' ) xlabel('Omega') ylabel('FRF theta') figure(2) plot( omega,amplitude_LAMDA ) title( 'amplitude lamda' ) xlabel('Omega') ylabel('FRF lambda') figure(3) plot( omega,amplitude_ALPHA ) title( 'amplitude alpha' ) xlabel('Omega') ylabel('FRF alpha') figure(4) plot( omega,angle_TETA ) title( 'phase teta' ) xlabel('Omega') ylabel('FRF theta') figure(5) plot( omega,angle_LAMDA ) title( 'phase lamda' ) xlabel('Omega') ylabel('FRF lambda') figure(6) plot( omega,angle_ALPHA ) title( 'phase alpha' ) xlabel('Omega') ylabel('FRF alpha')