Slider Crank Mechanism

  • Uploaded by: majidkoul
  • 0
  • 0
  • January 2021
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Slider Crank Mechanism as PDF for free.

More details

  • Words: 785
  • Pages: 42
Loading documents preview...
PROJECT II SLIDER CRANK MECHANISM

Presented by: 1. Lokesh Kumar 2. Majid Hameed 3. Saurabh Sharma

Under the Guidance of

Prof. S K Saha MULTI-BODY SYSTEMS & VIBRATION DESIGN

Objective  Dynamic Modeling of a Slider Crank

Mechanism.  To carry out Inverse Dynamics.  Perform Free and Forced Simulation.

 Verification

Frame Representation Y1

2

X2 X4

Y3

3

1

Z4

X1 X3

Link parameters Y1

X2

2

X4

#2 M2,a2

#1 M1,a1

Y3

3

1 X1

#3 M3,b 4

Z4

X3

Methods used for modeling  Euler Lagrange Independent Generalised

Coordinate Method.  Euler Lagrange Dependent Set of

Generalised Coordinates Method.  Using NOC / DeNOC and Lagrange

Multipliers.

Dependent Set Method

 d L L  T ( . )  ai   i dt  q  qi i

Generalised Equation

     T I q h  g a   ..

I Matrix

H Matrix .

.

.

[( m2 a1a2  1 sin  2  2  (m2 a1a2  sin  2 / 2)] 2 2

.

m2 a1a2 sin  2 

2 1

0 0

G Matrix (m1a1 g cos 1 / 2) 0 0 0

Constraint Matrix

Jacobian J Relations

Matlab Program for Euler Lagrange Dependent set of Coordinates % Initial Values a1=1; a2=3; m1=1; m2=1; m3=1; th0=0; ths=pi/2; T=2; i=1; g=9.81; for t= 0:0.01:2 % Initializing th1(i) = th0 + (((ths-th0)/T)*(t-(((T/(2*pi))*sin(2*pi*t/T))))); dth1(i) = ((ths-th0)/T)*(1-((T/(2*pi))*cos(2*pi*t/T))*(2*pi/T)); ddth1(i) = ((ths-th0)/T^2)*sin(2*pi*t/T)*2*pi; % Relations th2(i)=(2*pi)- th1(i) - asin(2*a1*sin(th1(i))/a2) ; dth2(i)=-(2*a1*cos(th1(i))*dth1(i))/(a2*cos(th1(i)+th2(i))) - dth1(i);

ddth2(i)= -ddth1(i)- [2*a1*[(cos(th2(i)+ th1(i))*((cos(th1(i))*ddth1(i))(sin(th1(i))*dth1(i)*dth1(i)))) + (cos(th1(i))*sin(th2(i)+th1(i))*dth1(i)*(dth2(i)+dth1(i)))]/ (cos(th2(i)+th1(i))*cos(th2(i)+th1(i))*a2)]; th3(i)=(2.5*pi)-(th1(i)+th2(i)); dth3(i)=-(dth1(i)+dth2(i)); ddth3(i)=-(ddth1(i)+ddth2(i)); ddb4(i)=(a1*cos(th1(i))*dth1(i))+(a1*sin(th1(i))*ddth1(i))(a1*cos(th1(i))*tan(th1(i)+th2(i))*ddth1(i))+(sin(th1(i))*tan(th1(i)+th2(i))*(dth1(i)*dth1(i)))(cos(th1(i))*(sec(th1(i)+th2(i))*sec(th1(i)+th2(i))*dth1(i)*(dth1(i)+dth2(i)))); % ddtheta vectors ddq=[ddth1(i);ddth2(i);ddth3(i);ddb4(i)]; % Inertia Matrix i11 = (m1*a1*a1/3)+(m2*a1*a1)+(m2*a2*a2/3)+(m2*a1*a2*cos(th2(i))); i12 = (m2*a2*a2/3)+(m2*a1*a2*cos(th2(i))/2); i13=0; i14=0; i21 = (m2*a2*a2/3)+(m2*a1*a2*cos(th2(i))/2); i22 = m2*a2*a2/3; i23=0; i24=0; i31=0; i32=0; i33=0; i34=0; i41=0; i42=0; i43=0; i44=m3; I=[i11 i12 i13 i14;i21 i22 i23 i24;i31 i32 i33 i34;i41 i42 i43 i44]; % H matrix h1=-(m2*a1*a2*dth1(i)*dth2(i)*sin(th2(i)))-(m2*a1*a2*dth2(i)*dth2(i)*sin(th2(i))/2);

h2=(m2*a1*a2*sin(th2(i))*dth1(i)*dth1(i)/2); h3=0; h4=0; H=[h1;h2;h3;h4]; % G matrix g1=m1*g*a1*cos(th1(i))/2; g2=0; g3=0; g4=0; G=[g1;g2;g3;g4];

% Constraint Matrix [Jacobian] a11=(-a1*sin(th1(i)))-(a2*sin(th1(i)+th2(i))/2); a21=-(a2*sin(th1(i)+th2(i))/2); a31=0; a41=1; a12=(a1*cos(th1(i)))+(a2*cos(th1(i)+th2(i))/2); a22=a2*cos(th1(i)+th2(i))/2; a32=0; a42=0; a13=1; a23=1; a33=1; a43=0; A=[a11 a12 a13 ;a21 a22 a23 ;a31 a32 a33 ;a41 a42 a43]; % J Matrix 'Orthogonal Complement of Constraint Matrix' j11=1; j21=(-1-(2*a1*cos(th1(i))/(a2*cos(th2(i))))); j31= 2*a1*cos(th1(i)) / (a2*cos(th1(i)+th2(i))); j41=((a1*sin(th1(i)))-(a1*cos(th1(i))*tan(th1(i)+th2(i)))); J=[j11 j21 j31 j41]; % Torque matrix Tor(i) = (J*I*ddq) + (J*H) + (J*G)

i=i+1; end t=0:0.01:2 subplot(2,2,1); plot(t,ddb4,'linewidth',4) grid on; %figure(2) subplot(2,2,2); plot(t,th1,t,dth1,t,ddth1) grid on; subplot(2,2,3); plot(t,th2,t,dth2,t,ddth2) subplot(2,2,4); plot(t,th3,t,dth3,t,ddth3) figure(4); plot(t,Tor) pp1=spline(t,Tor); save('td1.mat','pp1')

Euler Lagrange Independent Coordinate Method

Contd….

Matlab Program for Independent Euler Lagrange Method m1=1; m2=1; m3=1; a1=1;a2=3; g=9.81; i=1; q1= 0; q2= (pi/2); T=2; for t= 0:0.01:2 th1(i)= (((q2-q1))/T)*(t-((T/(2*pi))*sin(2*pi*t/T))); thd1(i)=(((q2-q1)/T)*(1-cos(2*pi*t/T))); thdd1(i)= ((q2-q1)/T)*(2*pi/T)*(sin(2*pi*t/T)); th2(i)=asin(-2*a1*sin(th1(i))/a2)-th1(i); thd2(i)=(-1-2*a1*cos(th1(i))/(a2*cos(th1(i)+th2(i))))*thd1(i); thdd2(i)=(2*a1*(sin(th1(i))*(thd1(i))*(thd1(i))cos(th1(i))*(thdd1(i)))/a2+sin(th1(i)+th2(i))*((thd1(i))+thd2(i))*((thd1(i))+thd2(i)))/cos(th1(i) +th2(i))-(thdd1(i)); bd(i)=a1*sin(th1(i))*thd1(i)+a2*sin(th1(i)+th2(i))*(thd1(i)+thd2(i))/2; bdd(i)=a1*sin(th1(i))*thdd1(i)+a1*cos(th1(i))*thd1(i)*thd1(i)+a2*sin(th1(i)+th2(i))*((thdd1(i ))+thdd2(i))/2+a2*cos(th1(i)+th2(i))*(thd1(i)+thd2(i))*(thd1(i)+thd2(i)); s(i)=m1*a1*a1/3+m2*a1*a1+m2*a1*a2*cos(th2(i))/22*m2*a1*a2*cos(th1(i))/(3*cos(th1(i)+th2(i)))m2*a1*a1*cos(th1(i))*cos(th2(i))/cos(th1(i)+th2(i)); u(i)=m2*a1*a2*cos(th2(i))/2-2*m2*a1*a2*cos(th1(i))/(3*cos(th1(i)+th2(i)));

v(i)=m3*a1*sin(th1(i))-m3*a1*cos(th1(i))*sin(th1(i)+th2(i))/cos(th1(i)+th2(i)); w(i)=-m2*a1*a2*sin(th2(i))*thd2(i)*(thd1(i)/2+thd2(i)/2a1*cos(th1(i))*thd1(i)/(a2*cos(th1(i)+th2(i)))); x(i)=(cos(th1(i))*sin(th1(i)+th2(i))*(thd1(i)+thd2(i))-cos(th1(i)+th2(i))*sin(th1(i))*thd1(i))*(m2*a1*a1*cos(th2(i))*thd1(i)2*m2*a1*a2*(thd1(i)+thd2(i))/3)/(cos(th1(i)+th2(i))*cos(th1(i)+th2(i))); y(i)=m3*bd(i)*(a1*cos(th1(i))*thd1(i)a1*cos(th1(i))*(thd1(i)+thd2(i))/(cos(th1(i)+th2(i))*cos(th1(i)+th2(i)))+a1*sin(th1(i))*sin(th1 (i)+th2(i))*thd1(i)/cos(th1(i)+th2(i))); z(i)=m2*a1*a2*(1+2*a1*cos(th1(i))/(a2*cos(th1(i)+th2(i))))*sin(th2(i))*(thd1(i)*thd1(i)+thd 1(i)*thd2(i))/2-m1*g*a1*cos(th1(i))/2; tor(i)=s(i)*thdd1(i)+u(i)*thdd2(i)+v(i)*bdd(i)+w(i)+x(i)+y(i)-z(i); i=i+1; end t= 0:0.01:2 figure(11) plot(t,tor); pp=spline(t,tor) save ('torquedata.mat',' pp')

Pendode Function function dy=pendodes(t,y) load torquedata.mat; tor=ppval(pp,t); dy=zeros(2,1) m1=1; m2=1; m3=1; a1=1; a2=3; g=9.81; th2=-y(1)-asin((2*a1*sin(y(1)))/a2); thd2=-(1+(2*a1*cos(y(1)))/(a2*cos(y(1)+th2)))*y(2); bd=a1*sin(y(1))*y(2)+a2*sin(y(1)+th2)*(y(2)+thd2)/2; i=m1*a1*a1/3+m2*a1*a1+m2*a1*a2*cos(th2)/2-2*m2*a1*a2*cos(y(1))/(3*cos(y(1)+th2))m2*a1*a1*cos(y(1))*cos(th2)/cos(y(1)+th2); j=(m2*a1*a2*cos(th2)/2-2*m2*a1*a2*cos(y(1))/(3*cos(y(1)+th2)))*(-12*a1*cos(y(1))/(a2*cos(y(1)+th2)))*(a1*sin(y(1))-(a1*cos(y(1))*tan(y(1)+th2))); k=m3*a1*sin(y(1))-m3*a1*cos(y(1))*sin(y(1)+th2)/cos(y(1)+th2); p=2*a1/a2*y(2)*(sin(y(1))*y(2)-cos(y(1))*tan(y(1)+th2)*(y(2)+thd2)); q=a1*cos(y(1))*y(2)*y(2)a1*cos(y(1))*y(2)*(y(2)+thd2)/(cos(y(1)+th2)*cos(y(1)+th2))+a1*sin(y(1))*y(2)*y(2)*tan(y( 1)+th2);

w=-m2*a1*a2*sin(th2)*thd2*(y(2)/2+thd2/2-a1*cos(y(1))*y(2)/(a2*cos(y(1)+th2))); x=(cos(y(1))*sin(y(1)+th2)*(y(2)+thd2)-cos(y(1)+th2)*sin(y(1))*y(2))*(m2*a1*a1*cos(th2)*y(2)-2*m2*a1*a2*(y(2)+thd2)/3)/(cos(y(1)+th2)*cos(y(1)+th2)); u=m3*bd*(a1*cos(y(1))*y(2)a1*cos(y(1))*(y(2)+thd2)/(cos(y(1)+th2)*cos(y(1)+th2))+a1*sin(y(1))*sin(y(1)+th2)*y(2)/co s(y(1)+th2)); z=m2*a1*a2*(1+2*a1*cos(y(1))/(a2*cos(y(1)+th2)))*sin(th2)*(y(2)*y(2)+y(2)*thd2)/2m1*g*a1*cos(y(1))/2; thdd1=(tor-(p+q+w+x+u-z))/(i+j+k); dy(1)=y(2); dy(2)=thdd1;

Matlab Program for Solution using Lagrange Multipliers and NOC clc;clf;clear; a1=1; a=1; a2=3; b=3; g=9.81; m1=1; m2=1; m3=1; i=1; a0=4; q1= 0; q2=(.5*pi); T=2; for t1= 0:0.01:2 th1(i)= (((q2-q1))/T)*(t1-((T/(2*pi))*sin(2*pi*t1/T))); thd1(i)=(((q2-q1)/T)*(1-cos(2*pi*t1/T))); thdd1(i)= ((q2-q1)/T)*(2*pi/T)*(sin(2*pi*t1/T)); th2(i)=-th1(i)-asin((2*a1*sin(th1(i)))/a2); thd2(i)=-(1+(2*a1*cos(th1(i)))/(a2*cos(th1(i)+th2(i))))*thd1(i);

thdd2(i)=sec(th1(i)+th2(i))*[2*a1/a2]*(sin(th1(i))*thd1(i)*thd1(i)cos(th1(i))*thdd1(i))+sec(th1(i)+th2(i))*(sin(th1(i)+th2(i))*(th1(i)+th2(i))*(th1(i)+th2(i)))thdd1(i); b4(i)=a0-a1*cos(th1(i))-0.5*a2*cos(th1(i)+th2(i)) bd4(i)=(a1*sin(th1(i))-a1*cos(th1(i))*sin(th1(i)+th2(i))/cos(th1(i)+th2(i)))*thd1(i); bdd4(i)=(a1*sin(th1(i))(a1*cos(th1(i))*sin(th1(i)+th2(i)))/cos(th1(i)+th2(i)))*thdd1(i)+(a1*cos(th1(i))*thd1(i)*thd1(i ))(a1*cos(th1(i))*thd1(i)*(thd1(i)+thd2(i)))/(cos((th1(i)+th2(i)))*cos((th1(i)+th2(i))))+a1*thd1(i )*sin(th1(i))*tan(th1(i)+th2(i))*thd1(i); i11(i)=(m1*a*a/3)+m2*(a*a+a*b*cos(th2(i))+b*b/3); i12(i)=m2*((b*b/3)+0.5*a*b*cos(th2(i))); i21(i)=m2*((b*b/3)+0.5*a*b*cos(th2(i))); i22(i)=m2*b*b/3; h1(i)=-m2*a*b*sin(th2(i))*thd1(i)*thd2(i)-m2*(a/2)*b*sin(th2(i))*thd2(i)*thd2(i); h2(i)=m2*(a/2)*b*sin(th2(i))*thd1(i)*thd1(i); g1(i)=m1*g*a/2*cos(th1(i))+m2*g*(a*cos(th1(i))+b/2*cos(th1(i)+th2(i))); g2(i)=m2*g*b/2*cos(th1(i)+th2(i));

s11(i)=(i11(i)*thdd1(i)+i12(i)*thdd2(i)+h1(i)+g1(i)); s12(i)=(a1*sin(th1(i))+a2*.5*sin(th1(i)+th2(i)))* m3*bdd4(i); s13(i)=((a1*cos(th1(i))+a2*.5*cos(th1(i)+th2(i)))*2*(i21(i)*thdd1(i)+i22(i)*thdd2(i)+h2(i)+g2(i)+a2* .5*sin(th1(i)+th2(i))*m3*bdd4(i))/(a2*cos(th1(i)+th2(i)))); s1(i)=s11(i)+s12(i)+s13(i) i=i+1; end t1=0:0.01:2 figure(1) plot(t1,s1) figure(2) plot(t1,th1,'-',t1,thd1,':',t1,thdd1,'.') legend('1st link pos','1st link velocity','1st link accelaratio') figure(3) plot(t1,th2,'-',t1,thd2,':',t1,thdd2,'.') legend('2nd link pos','2nd link velocity','2nd link accelaratio') figure(4) plot(t1,bd4,':',t1,bdd4,'.') legend('slider position','slider velocity','slider accelaration') pp1=spline(t1,s1); save('torquedata1.mat','pp1')

Pendode Function function dy=pendode(t,y) dy=zeros(2,1) m1=1;m2=1;m3=1;a1=1;a2=3;a3=1;g=9.81; th1=y(1); thd1=y(2); T1=0; th2=-th1-asin((2*a1*sin(th1))/a2); thd2=-(1+(2*a1*cos(th1))/(a2*cos(th1+th2)))*thd1; thdd1=3*cos(th1+th2)^2/a1^2/(cos(th1+th2)^2*m1+3*cos(th1+th2)^2*m2 -6*m2*cos(th1+th2)*cos(th2)*cos(th1)+4*cos(th1)^2*m2 +6*cos(th1)*sin(th1+th2)*m3*cos(th1+th2)*sin(th1) -3*cos(th1)^2*sin(th1+th2)^2*m3 -3*cos(th1+th2)^2*m3*sin(th1)^2)*(T1+m2*a1*a2*sin(th2)*thd1*thd2 +1/2*m2*a1*a2*sin(th2)*thd2^2-1/2*m1*g*a1*cos(th1)-m2*g*(a1*cos(th1) +1/2*a2*cos(th1+th2)))-3/a2*cos(th1+th2)*(2*a1*cos(th1) +a2*cos(th1+th2))/a1^2/(cos(th1+th2)^2*m1+3*cos(th1+th2)^2*m2 -6*m2*cos(th1+th2)*cos(th2)*cos(th1) +4*cos(th1)^2*m2+6*cos(th1)*sin(th1+th2)*m3*cos(th1+th2)*sin(th1) -3*cos(th1)^2*sin(th1+th2)^2*m3 -3*cos(th1+th2)^2*m3*sin(th1)^2)*(-1/2*m2*a1*a2*sin(th2)*thd1^2 -1/2*m2*g*a2*cos(th1+th2))+1/a1*(-3*m2*cos(th1+th2)*cos(th2) +4*m2*cos(th1)+3*sin(th1+th2)*m3*cos(th1+th2)*sin(th1)

-3*sin(th1+th2)^2*m3*cos(th1))/(cos(th1+th2)^2*m1+3*cos(th1+th2)^2*m2 -6*m2*cos(th1+th2)*cos(th2)*cos(th1)+4*cos(th1)^2*m2 +6*cos(th1)*sin(th1+th2)*m3*cos(th1+th2)*sin(th1)-3*cos(th1)^2*sin(th1+th2)^2*m3 3*cos(th1+th2)^2*m3*sin(th1)^2)*(a1*sin(th1)*thd1+1/2*a2*sin(th1+th2)*(thd1+thd2)*thd 1 +1/2*a2*sin(th1+th2)*(thd1+thd2)*thd2)-3*cos(th1+th2)*m3/a1*(-cos(th1+th2)*sin(th1) +sin(th1+th2)*cos(th1))/(cos(th1+th2)^2*m1+3*cos(th1+th2)^2*m2 -6*m2*cos(th1+th2)*cos(th2)*cos(th1)+4*cos(th1)^2*m2 +6*cos(th1)*sin(th1+th2)*m3*cos(th1+th2)*sin(th1)-3*cos(th1)^2*sin(th1+th2)^2*m3 3*cos(th1+th2)^2*m3*sin(th1)^2)*((a1*cos(th1)*thd1+1/2*a2*cos(th1+th2)*(thd1+thd2))*t hd1 +1/2*a2*cos(th1+th2)*(thd1+thd2)*thd2); dy(1)=y(2); dy(2)=thdd1;

clc;clf;clear; syms b s a m1 m2 m3 a1 a2 b4 th1 th2 g T c d thd1 thd2 S=[(m1*a1*a1/3)+m2*(a1*a1+a1*a2*cos(th2)+a2*a2/3) 2*((a2*a2/3)+0.5*a1*a2*cos(th2)) 0 (a1*sin(th1)+a2*.5*sin(th1+th2)), -(a1*cos(th1)+a2*.5*cos(th1+th2)); m2*((a2*a2/3)+0.5*a1*a2*cos(th2)), m2*a2*a2/3, 0, -a2*.5*sin(th1+th2), -2*0.5*cos(th1+th2)); 0, 0 , m3 , -1, 0; (a1*cos(th1)+a2*0.5*cos(th1+th2)), a2*0.5*cos(th1+th2), 0 , 0, 0; (-a1*sin(th1)-a2*0.5*sin(th1+th2)), -(a2*0.5*sin(th1+th2)), -1, 0 , 0]; c=[T-(-m2*a1*a2*sin(th2)*thd1*thd2-m2*(a1/2)*a2*sin(th2)*thd2*thd2)(m1*g*a1/2*cos(th1)+m2*g*(a1*cos(th1)+a2/2*cos(th1+th2))); -(m2*(a1/2)*a2*sin(th2)*thd1*thd1)-m2*g*a2/2*cos(th1+th2); 0; a1*sin(th1)*thd1+a2*0.5*sin(th1+th2)*(thd1+thd2)*thd1)+(a2*0.5*sin(th1+th2)*(thd1+thd) *thd2

((a1*cos(th1)*thd1+a2*0.5*cos(th1+th2)*(thd1+thd2))*thd1)+(a2*0.5*cos(th1+th2)*(thd1+t hd2)*thd2)]; d=inv(S)*c

RESULTS  INVERSE DYNAMICS FREE SIMULATION FORWARD DYNAMICS

PLOTS FOR LINK #1

PLOTS FOR LINK #2

PLOTS FOR SLIDER

TORQUE OBTAINED

FREE SIMULATION

Forward Dynamics 10 link1 pos link2 vel 8

6

4

2

0

-2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

Verification 6 link1 pos link2 vel

4

2

0

-2

-4

-6

0

0.2

0.4

0.6

0.8

1

1.2

M2=0; m3=0; a2=0;

1.4

1.6

1.8

2

Verification 5 link1 posi link1 vel

4 3 2 1 0 -1 -2 -3 -4

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

ROBO ANALYSER Comparison of Results obtained from Matlab and Robo-Analyser for RP manipulator System.

Related Documents


More Documents from "browar444"

Slider Crank Mechanism
January 2021 0