Force Analysis Of Inclined Leg Press Machine - Virtual Work - D. Langley and E. Bowers

This analysis performed by Daniel Langley and Evan Bowers - Fall 2010 ME 4640 TN Tech University

Figure 1: Nautilus Inclined Leg Press Machine

flickr:5264759051

The Problem

The scope of this force analysis is to use the method of virtual work to solve the input force required to move the weight carriage of the leg press machine through each position.

Discussion of Methodology

Method of vitual work

The method of virtual work is a method for force analysis defined with the following assumptions: "If a conservative, rigid-body mechanism is in equilibrium under the action of external forces, the total work done by these forces is 0 for small (virtual) displacements. [1]" Mathematically:

(1)
\begin{align} \begin{equation 1}\ \begin{split} \delta W& =\Sigma \vec{F} \cdot \delta s + \Sigma \vec{T} \cdot \delta \theta \\ & \Rightarrow \Sigma \vec{F} \cdot \frac{\delta s}{dt} +\Sigma \vec{T} \cdot \frac{\delta \theta}{dt}\\ & \Rightarrow \boxed{\sum_i \vec{F_i} \cdot \vec{V_i} + \sum_i \vec{T} \cdot \vec{\omega_j}=0}\\ \end{split} \end{equation} \end{align}

Linkage Position Solution

In order to properly execute the method of virtual work at every linkage position, we need to solve the linkage position. Below is a drawing of the vector loop model:

This vector loop has the following loop closure equation:

(2)
\begin{align} \begin{equation 2}\label{2} \begin {split} \L: \vec{r_1} + \vec{r_2} - \vec{r_s_a} - \vec{r_s} + \vec{r_3} = 0\\ \end{split} \end{equation} \end{align}

From this loop, we have two unknown angles:

(3)
\begin{align} \theta_1 \quad \theta_2 \end{align}

The position solution was obtained by using an algebraic solution presented in section 4.5 of Design of Machinery by Robert L. Norton.
A photo of the hand calculation can be found here: Position Solution [http://flic.kr/p/92f6WB Page 2

Figure 2

A plot of the linkage position is shown below:

flickr:5264977937

Figure 3

Shown below are snapshots of a simulation of the linkage:

flickr:5265590920

Solving the Velocity of The Linkage

Solving the input force with Virtual Work

We will make use of the method of virtual work to solve the input force required to move the weight carriage. From equation (1) We can solve for the force with the known velocity.

flickr:5265582496

Discussion of Results

Results of Force Analysis

Shown above is a graph of the linkage positions as the input displacement from the user increases up the inclined plane of the press. From this graph, a key observation is the orientation of the force vector input for operating the press. This has an effect on the mechanical advantage of the linkage. A change in the input force required to lift the weight is shown above. As the time increases (x axis) the input displacement increases. This graph shows that as input increases, the force required to move the weight on the slider also increases until a maximum is achieved. This maximum appears to be equivalent to the amount of weight (barbells) added to the side of the machine. The method of virtual work was used to find the input force required, only considering the force of the applied weights to the machine. This also gave an expression for the mechanical advantage of the machine, that is a ratio of the force of the weight to the input force. Therefore the maximum mechanical advantage of the machine appears to be at the minimum of input position. My theory is that the designers wanted to lessen the amount of input force from while the user's knees were bent. This would reduce the strain on the knees and require the most force when the user's legs were extended. This would be beneficial because it targets the leg muscles to do most of the work and relieves stress on the knees.

%***********************************************************************
%  Leg Press Machine Force Analysis ************************************
%  ME 4640 Daniel Langley **********************************************
%          Evan Bowers    **********************************************
%***********************************************************************

clear all 
dtr = pi/180; %degrees to radians

%**********************
% Dimensions and inputs
%***********************
Fw = 250; % lbs

r1 = 3; % ft
r2 = 1.4;
r3 = 1;
theta3 = -50*dtr;
rsa = 0.25;
rs0 = -3.25;
t = linspace(0,1.25);
rs_ddot = -2;
rs_dot = rs_ddot.*t;
rs = rs0 - .5.*rs_ddot*t.^2;
branch = 1;
%***********************
% Position Solution
%***********************
 box = 2.5; scale = [-box,box,-box,box];

 for j=1:length(t)% for j=1:length(theta2)

     c3 = cos(theta3);
     s3 = sin(theta3);

     x = rs(j) - r3*c3;
     y = rsa - r3*s3;
     A = x^2+y^2+r2^2-r1^2+2*x*r2;
     B = -4*y*r2;
     C = x^2+y^2+r2^2-r1^2-2*x*r2;

     t1 = (-B+branch*(B^2-4*A*C)^.5)/(2*A);

     theta2 = (2*atan(t1));
     c2 = cos(theta2);
     s2 = sin(theta2);

     theta1 = atan2((rsa-r3*s3-r2*s2),(rs(j)-r3*c3-r2*c2));
     theta1s(j)=theta1/dtr;
     theta2s(j)=theta2/dtr;

     s1 = sin(theta1);
     c1 = cos(theta1);

     c= [-r1*s1 -r2*s2
         r1*c1 r2*c2];

     bv = [rs_dot(j)
         0];

     v = inv(c)*bv;

     theta1_dot(j) = v(1);
     theta2_dot(j) = v(2);

ba = [rs_ddot+r1*theta1_dot(j)^2*c1+r2*theta2_dot(j)^2*c2
      r1*theta1_dot(j)^2*s1+r2*theta2_dot(j)^2*s2];

     a = inv(c)*ba;
     theta1_ddot(j) = a(1);
     theta2_ddot(j) = a(2);

    %*************************
    % Plot & Animate
    %*************************

    tilt =  0.7854;

    p1 = 0;
    p2 = p1 + r3*exp(i*(theta3+tilt));
    p3 = p2 + r1*exp(i*(theta1+tilt));
    p4 = p3 + r2*exp(i*(theta2+tilt));
    p5 = p4 - rsa*exp(i*(pi/2+tilt));
    p6 = p5 - rs(j)*exp(i*tilt);
    figure(1)
    plot_pts = [p1,p2,p3,p4,p5,p6,p1];

    plot(plot_pts)
    axis(scale)
    pause(.01)
    plot_pts_store(j,:)=plot_pts;
    check(j,1) = abs(p3-p2);
    check(j,2) = abs(p4-p3);
%     hold on
 end
hold on
plot(plot_pts_store,'LineWidth',3)
title('Leg Press Linkage with Position Curves');

F2 = ((Fw*cosd(45))*rs_dot)./(theta2_dot*r2);
figure(2)
plot(t,F2)
xlabel('Time in Seconds');
ylabel('Input Force');
title('Incline Leg Press Force Analysis');
Fmax = max(F2)
figure(3)
plot(rs,theta1s,rs,theta2s)
xlabel('Distance of Slider (ft)');
ylabel('Angle of Rotation (Degrees)');
legend('Theta1','Theta2');