248 6 Analytical Dynamics of Open Kinematic Chains
From the Lagrange’s equations of motions the torques T
01x
and T
12y
and the force
F
23z
are calculated:
sol = solve(Lagra1,Lagra2,Lagra3,’T01x, T12y, F23z’);
T01xc = simple(sol.T01x);
T12yc = simple(sol.T12y);
F23zc = simple(sol.F23z);
The generalized coordinates, q
1
, q
2
, and q
3
given by Eq. 6.43 and their derivatives,
˙q
1
, ˙q
2
, ˙q
3
, ¨q
1
, ¨q
2
, ¨q
3
are substituted in the expressions of T
01x
, T
12y
, and F
23z
:
q1s = pi/18; q2s = pi/6; q3s = 0.25;
q1f = pi/3 ; q2f = pi/3; q3f = 0.3;
Tp=15.;
q1t = q1s+(q1f-q1s)/Tp
*
(t-Tp/(2
*
pi)
*
sin(2
*
pi/Tp
*
t));
q2t = q2s+(q2f-q2s)/Tp
*
(t-Tp/(2
*
pi)
*
sin(2
*
pi/Tp
*
t));
q3t = q3s+(q3f-q3s)/Tp
*
(t-Tp/(2
*
pi)
*
sin(2
*
pi/Tp
*
t));
dq1t = diff(q1t,t);
dq2t = diff(q2t,t);
dq3t = diff(q3t,t);
ddq1t = diff(dq1t,t);
ddq2t = diff(dq2t,t);
ddq3t = diff(dq3t,t);
ql = {diff(q1,t,2), diff(q2,t,2), diff(q3,t,2), ...
diff(q1,t), diff(q2,t), diff(q3,t), q1, q2, q3};
qn = {ddq1t,ddq2t,ddq3t,dq1t,dq2t,dq3t,q1t,q2t,q3t};
T01xt = subs(T01xc, ql, qn);
T12yt = subs(T12yc, ql, qn);
F23zt = subs(F23zc, ql, qn);
The plots and the values of T
01x
(t), T
12y
(t), and F
23z
(t) are obtained with the MAT-
LAB commands:
time = 0:1:Tp;
T01t = subs(T01xt,’t’,time);
T12t = subs(T12yt,’t’,time);
F23t = subs(F23zt,’t’,time);
subplot(3,1,1), plot(time,T01t),...
xlabel(’t (s)’), ylabel(’T01x (N m)’), grid,...
subplot(3,1,2), plot(time,T12t),...
xlabel(’t (s)’), ylabel(’T12y (N m)’), grid,...
subplot(3,1,3), plot(time,F23t),...
xlabel(’t (s)’), ylabel(’F23z (N)’), grid