Mechanism Mobility Calculation
- 6 links (L), 7 Full Joints (J1), 0 Half Joints (J2)
- M = 3L - 3 - 2J1 - J2 = 3(6) - 3 - 2(7) = 1 DOF
Position, Velocity and Acceleration Analysis
By varying Watt's original six-bar linkage, Mehdigholi and Akbarnejad created a 1 DOF walking mechanism that can be split into two sets: a 4-bar and 5-bar linkage. This separation is shown with two different highlights in the sketch below. Here, the five bar linkage is composed of links 1, 4, 5, 3, and ground but is not standard as it does not have two grounding points. In other words, it actually has two degrees of freedom, and requires a second system to restrict its position, velocity and acceleration. That role is fulfilled by conducting kinematic analysis on the four-bar mechanism of links 1', 3', 2, and 6 (ground). Because of this setup, the conventional method of analyzing a Watt's Six-Bar Linkage will not work–this mechanism is lacking one more grounding point for this methodology. Instead, seeing that theta 2 and 3' are unknowns in the 4-bar linkage and that they can be found using two equations (one real, one imaginary), allows me to then solve for the unknowns in the "five-bar" linkage of theta 4 and 5. (Note: All angles below are measured relative to the horizontal in a counterclockwise direction, as is set out by the convention established for this class.)
From this setup, there are two different vector loop equations:
In the analysis done below, I opted to make the equations less crowded by using Rx to represent the same as |Rx|. Also, along each step of the way, I solved equation 1 first to find restrictions pertinent to link 3 that can then be applied to the "four-bar" submechanism.
Separating equation 1 into real and imaginary then gives
Observing that as the grounded link, theta 6 is equal to 0, I now have
Squaring both equations above and adding them together allows for some simplification
Let a = R1', b = R3', c = R2, d = R6 (for additional simplifciation)
Dividing by 2ac:
Let K1 = d/a, k2 = d/c, k3 = (a2 - b2 + c2 + d2) / (2ac) and apply cos(x-y) = sin(x)sin(y) + cos(x)cos(y)
Finally, substitute the half-angle identities for sine and cosine
Now, since it is known that the linkage is an open four-bar linkage, I know:
Repeating the process above, but solving for theta 3 gives:
k4 = d/b and k5 = (c2 - a2 - b2 - d2) / (2ab) simplifies the equation above to:
Once more, the half-angle identities were used and the following equation for theta 3 was found
Conducting position analysis on the second equation was far more difficult than I anticipated. After attempting to simplify the following equations multiple times, I opted to use MATLAB's built in symbolic solver to find a long equation for theta 4 and theta 5.
MATLAB:
>> syms R11 t1 R33 t3 R5 t5 R4 t4;
>> eqns = [(R11*cos(t1))+(R33*cos(t3))-(R5*cos(t5))-(R4*cos(t4)) == 0, (R11*sin(t1))+
(R33*sin(t3))-(R5*sin(t5))-(R4*sin(t4)) == 0];
>> S = solve(eqns,[t5 t4]);
>> S.t5
ans =
-2*atan((4*R4*R11*tan(t1/2) - ((2*R4*R5 - 2*R11*R33 + R4^2 + R5^2 - R11^2 - R33^2 + R4^2*tan(t1/2)^2 + R5^2*tan(t1/2)^2 + R4^2*tan(t3/2)^2 + R5^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2 - R11^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2 - R33^2*tan(t3/2)^2 + R4^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2 + 2*R11*R33*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 - 8*R11*R33*tan(t1/2)*tan(t3/2))*(2*R4*R5 + 2*R11*R33 - R4^2 - R5^2 + R11^2 + R33^2 - R4^2*tan(t1/2)^2 - R5^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 - R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 - R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)))^(1/2) + 4*R4*R33*tan(t3/2) + 4*R4*R11*tan(t1/2)*tan(t3/2)^2 + 4*R4*R33*tan(t1/2)^2*tan(t3/2))/(2*R5*R11 + 2*R5*R33 + 2*R11*R33 - R4^2 + R5^2 + R11^2 + R33^2 - R4^2*tan(t1/2)^2 + R5^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 + R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 - 2*R5*R11*tan(t1/2)^2 + 2*R5*R11*tan(t3/2)^2 + 2*R5*R33*tan(t1/2)^2 - 2*R5*R33*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 - 2*R5*R11*tan(t1/2)^2*tan(t3/2)^2 - 2*R5*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)) - (4*(R4*R11*tan(t1/2) + R5*R11*tan(t1/2) + R4*R33*tan(t3/2) + R5*R33*tan(t3/2) + R4*R11*tan(t1/2)*tan(t3/2)^2 + R5*R11*tan(t1/2)*tan(t3/2)^2 + R4*R33*tan(t1/2)^2*tan(t3/2) + R5*R33*tan(t1/2)^2*tan(t3/2)))/(2*R5*R11 + 2*R5*R33 + 2*R11*R33 - R4^2 + R5^2 + R11^2 + R33^2 - R4^2*tan(t1/2)^2 + R5^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 + R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 - 2*R5*R11*tan(t1/2)^2 + 2*R5*R11*tan(t3/2)^2 + 2*R5*R33*tan(t1/2)^2 - 2*R5*R33*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 - 2*R5*R11*tan(t1/2)^2*tan(t3/2)^2 - 2*R5*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)))
2*atan((4*(R4*R11*tan(t1/2) + R5*R11*tan(t1/2) + R4*R33*tan(t3/2) + R5*R33*tan(t3/2) + R4*R11*tan(t1/2)*tan(t3/2)^2 + R5*R11*tan(t1/2)*tan(t3/2)^2 + R4*R33*tan(t1/2)^2*tan(t3/2) + R5*R33*tan(t1/2)^2*tan(t3/2)))/(2*R5*R11 + 2*R5*R33 + 2*R11*R33 - R4^2 + R5^2 + R11^2 + R33^2 - R4^2*tan(t1/2)^2 + R5^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 + R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 - 2*R5*R11*tan(t1/2)^2 + 2*R5*R11*tan(t3/2)^2 + 2*R5*R33*tan(t1/2)^2 - 2*R5*R33*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 - 2*R5*R11*tan(t1/2)^2*tan(t3/2)^2 - 2*R5*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)) - (((2*R4*R5 - 2*R11*R33 + R4^2 + R5^2 - R11^2 - R33^2 + R4^2*tan(t1/2)^2 + R5^2*tan(t1/2)^2 + R4^2*tan(t3/2)^2 + R5^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2 - R11^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2 - R33^2*tan(t3/2)^2 + R4^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2 + 2*R11*R33*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 - 8*R11*R33*tan(t1/2)*tan(t3/2))*(2*R4*R5 + 2*R11*R33 - R4^2 - R5^2 + R11^2 + R33^2 - R4^2*tan(t1/2)^2 - R5^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 - R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 - R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)))^(1/2) + 4*R4*R11*tan(t1/2) + 4*R4*R33*tan(t3/2) + 4*R4*R11*tan(t1/2)*tan(t3/2)^2 + 4*R4*R33*tan(t1/2)^2*tan(t3/2))/(2*R5*R11 + 2*R5*R33 + 2*R11*R33 - R4^2 + R5^2 + R11^2 + R33^2 - R4^2*tan(t1/2)^2 + R5^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 + R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 - 2*R5*R11*tan(t1/2)^2 + 2*R5*R11*tan(t3/2)^2 + 2*R5*R33*tan(t1/2)^2 - 2*R5*R33*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 - 2*R5*R11*tan(t1/2)^2*tan(t3/2)^2 - 2*R5*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)))
>> S.t4
ans =
2*atan((4*R4*R11*tan(t1/2) - ((2*R4*R5 - 2*R11*R33 + R4^2 + R5^2 - R11^2 - R33^2 + R4^2*tan(t1/2)^2 + R5^2*tan(t1/2)^2 + R4^2*tan(t3/2)^2 + R5^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2 - R11^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2 - R33^2*tan(t3/2)^2 + R4^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2 + 2*R11*R33*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 - 8*R11*R33*tan(t1/2)*tan(t3/2))*(2*R4*R5 + 2*R11*R33 - R4^2 - R5^2 + R11^2 + R33^2 - R4^2*tan(t1/2)^2 - R5^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 - R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 - R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)))^(1/2) + 4*R4*R33*tan(t3/2) + 4*R4*R11*tan(t1/2)*tan(t3/2)^2 + 4*R4*R33*tan(t1/2)^2*tan(t3/2))/(2*R4*R11 + 2*R4*R33 + 2*R11*R33 + R4^2 - R5^2 + R11^2 + R33^2 + R4^2*tan(t1/2)^2 - R5^2*tan(t1/2)^2 + R4^2*tan(t3/2)^2 - R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 + R4^2*tan(t1/2)^2*tan(t3/2)^2 - R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 - 2*R4*R11*tan(t1/2)^2 + 2*R4*R11*tan(t3/2)^2 + 2*R4*R33*tan(t1/2)^2 - 2*R4*R33*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 - 2*R4*R11*tan(t1/2)^2*tan(t3/2)^2 - 2*R4*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)))
2*atan((((2*R4*R5 - 2*R11*R33 + R4^2 + R5^2 - R11^2 - R33^2 + R4^2*tan(t1/2)^2 + R5^2*tan(t1/2)^2 + R4^2*tan(t3/2)^2 + R5^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2 - R11^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2 - R33^2*tan(t3/2)^2 + R4^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2 + 2*R11*R33*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 - 8*R11*R33*tan(t1/2)*tan(t3/2))*(2*R4*R5 + 2*R11*R33 - R4^2 - R5^2 + R11^2 + R33^2 - R4^2*tan(t1/2)^2 - R5^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 - R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 - R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)))^(1/2) + 4*R4*R11*tan(t1/2) + 4*R4*R33*tan(t3/2) + 4*R4*R11*tan(t1/2)*tan(t3/2)^2 + 4*R4*R33*tan(t1/2)^2*tan(t3/2))/(2*R4*R11 + 2*R4*R33 + 2*R11*R33 + R4^2 - R5^2 + R11^2 + R33^2 + R4^2*tan(t1/2)^2 - R5^2*tan(t1/2)^2 + R4^2*tan(t3/2)^2 - R5^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 + R4^2*tan(t1/2)^2*tan(t3/2)^2 - R5^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2*tan(t3/2)^2 - 2*R4*R11*tan(t1/2)^2 + 2*R4*R11*tan(t3/2)^2 + 2*R4*R33*tan(t1/2)^2 - 2*R4*R33*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 - 2*R11*R33*tan(t3/2)^2 - 2*R4*R11*tan(t1/2)^2*tan(t3/2)^2 - 2*R4*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2)))
Using trial and error to determine which function was valid, and then simplify() and collect(), I got the following two equations for theta 4 and 5:
T4 = 2*atan((((R4^2*tan(t1/2)^2*tan(t3/2)^2 + R4^2*tan(t1/2)^2 + R4^2*tan(t3/2)^2 + R4^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 + 2*R4*R5 + R5^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2 + R5^2*tan(t3/2)^2 + R5^2 - R11^2*tan(t1/2)^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2 - R11^2*tan(t3/2)^2 - R11^2 - 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2 - 8*R11*R33*tan(t1/2)*tan(t3/2) + 2*R11*R33*tan(t3/2)^2 - 2*R11*R33 - R33^2*tan(t1/2)^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2 - R33^2*tan(t3/2)^2 - R33^2)*(2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 - R4^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 + 2*R4*R5 - R5^2*tan(t1/2)^2*tan(t3/2)^2 - R5^2*tan(t1/2)^2 - R5^2*tan(t3/2)^2 - R5^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R11^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2) - 2*R11*R33*tan(t3/2)^2 + 2*R11*R33 + R33^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 + R33^2))^(1/2) + 4*R4*R11*tan(t1/2) + 4*R4*R33*tan(t3/2) + 4*R4*R11*tan(t1/2)*tan(t3/2)^2 + 4*R4*R33*tan(t1/2)^2*tan(t3/2))/(R4^2*tan(t1/2)^2*tan(t3/2)^2 + R4^2*tan(t1/2)^2 + R4^2*tan(t3/2)^2 + R4^2 - 2*R4*R11*tan(t1/2)^2*tan(t3/2)^2 - 2*R4*R11*tan(t1/2)^2 + 2*R4*R11*tan(t3/2)^2 + 2*R4*R11 - 2*R4*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R33*tan(t1/2)^2 - 2*R4*R33*tan(t3/2)^2 + 2*R4*R33 - R5^2*tan(t1/2)^2*tan(t3/2)^2 - R5^2*tan(t1/2)^2 - R5^2*tan(t3/2)^2 - R5^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R11^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2) - 2*R11*R33*tan(t3/2)^2 + 2*R11*R33 + R33^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 + R33^2))
T5 = 2*atan((4*R5*R11*tan(t1/2) - ((R4^2*tan(t1/2)^2*tan(t3/2)^2 + R4^2*tan(t1/2)^2 + R4^2*tan(t3/2)^2 + R4^2 + 2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 + 2*R4*R5 + R5^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2 + R5^2*tan(t3/2)^2 + R5^2 - R11^2*tan(t1/2)^2*tan(t3/2)^2 - R11^2*tan(t1/2)^2 - R11^2*tan(t3/2)^2 - R11^2 - 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R11*R33*tan(t1/2)^2 - 8*R11*R33*tan(t1/2)*tan(t3/2) + 2*R11*R33*tan(t3/2)^2 - 2*R11*R33 - R33^2*tan(t1/2)^2*tan(t3/2)^2 - R33^2*tan(t1/2)^2 - R33^2*tan(t3/2)^2 - R33^2)*(2*R4*R5*tan(t1/2)^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 - R4^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 + 2*R4*R5*tan(t1/2)^2 + 2*R4*R5*tan(t3/2)^2 + 2*R4*R5 - R5^2*tan(t1/2)^2*tan(t3/2)^2 - R5^2*tan(t1/2)^2 - R5^2*tan(t3/2)^2 - R5^2 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R11^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2) - 2*R11*R33*tan(t3/2)^2 + 2*R11*R33 + R33^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 + R33^2))^(1/2) + 4*R5*R33*tan(t3/2) + 4*R5*R11*tan(t1/2)*tan(t3/2)^2 + 4*R5*R33*tan(t1/2)^2*tan(t3/2))/(R5^2*tan(t1/2)^2*tan(t3/2)^2 - R4^2*tan(t1/2)^2 - R4^2*tan(t3/2)^2 - R4^2 - R4^2*tan(t1/2)^2*tan(t3/2)^2 + R5^2*tan(t1/2)^2 + R5^2*tan(t3/2)^2 + R5^2 - 2*R5*R11*tan(t1/2)^2*tan(t3/2)^2 - 2*R5*R11*tan(t1/2)^2 + 2*R5*R11*tan(t3/2)^2 + 2*R5*R11 - 2*R5*R33*tan(t1/2)^2*tan(t3/2)^2 + 2*R5*R33*tan(t1/2)^2 - 2*R5*R33*tan(t3/2)^2 + 2*R5*R33 + R11^2*tan(t1/2)^2*tan(t3/2)^2 + R11^2*tan(t1/2)^2 + R11^2*tan(t3/2)^2 + R11^2 + 2*R11*R33*tan(t1/2)^2*tan(t3/2)^2 - 2*R11*R33*tan(t1/2)^2 + 8*R11*R33*tan(t1/2)*tan(t3/2) - 2*R11*R33*tan(t3/2)^2 + 2*R11*R33 + R33^2*tan(t1/2)^2*tan(t3/2)^2 + R33^2*tan(t1/2)^2 + R33^2*tan(t3/2)^2 + R33^2))
With the position analysis completed, the velocity and acceleration analysis was relatively straightforward.
Using omega 2 and 3 from above, I could again, solve for the second vector loop's velocity values
For the acceleration analysis, the previous vector loop equation for velocity was derived with respect to time a second time and algebraically manipulated for the desired values:
Once more, using the results of the first vector loop equation, the second was solved:
Using the relationships found above, the position, velocity, and acceleration of the "end effector"—the foot here or link 5—was plotted using MATLAB below. The input crank (Link 1 above) was set to rotate with a speed of 1.57 rad/s or 15 RPM clockwise. This full range of motion creates a crank-rocker six-bar linkage, as can be seen in the animation. Additionally, the animation features a ternary link, which was simply added to the link assembly in PMKS to illustrate the position of the "foot" as an offset to link 5. Since there is not a rotating slider, there is not a Coriolis acceleration, so instead the resolved acceleration at the third "joint" on link 5 is shown with the orange line in the attached PMKS animation. The position plot successfully resembles the desired trajectory for a "step" described by Mehdigoli and Akbarnejad in their paper. Additionally, some discontinuities are excluded in the velocity and acceleration plots to have a defined and reasonable plot.