铰链六杆机构的运动分析

更新时间:2023-03-13 14:06:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

铰链六杆机构的运动分析

1. 题目:铰链六杆机构的运动分析

如图所示,已知铰链六杆机构各构件的尺寸为:AB=100mm,BC=370mm,

CD=150mm,DE=150mm,EF=250mm,a=120mm,b=360mm,c=90mm,=45°及原动件1以转速n=1000npm逆时针转动,计算杆2,3,4及滑块5的角位移,角速度,角加速度及位移,速度和加速度,并绘制出运动线图。

2. 数学模型

(1) 位置分析

由图知:

,

即:

由几何关系:

(2)速度分析

对(1)

t

对应矩阵:

(3)加速度分析

对(2)中式子关于时间t求导,得:

对应矩阵:

+=

3、程序设计 主程序文件

%1.输入已知数据 clear; l1=100; l2=370; lcd=150; lde=150; l4=250;; a=120; b=360; c=90; n=1000; du=180/pi; hd=pi/180;

omega1=2*pi*n/60; alpha1=0;

%2.调用子函数计算机构位移、速度、加速度、角位移、角速度、角加速

for n1=1:361

theta1=(n1-1)*hd;

[theta,omega,OMEGA,alpha,ALPHA,s5(n1),v5(n1),a5(n1)]=crank_rocker(theta1,omega1,alpha1,l1,l2,lcd,lde,l4,a,b,c); theta2(n1)=theta(2); theta3(n1)=theta(3); theta4(n1)=theta(4); omega2(n1)=omega(1); omega3(n1)=omega(2); omega4(n1)=OMEGA(1); alpha2(n1)=alpha(1); alpha3(n1)=alpha(2); alpha4(n1)=ALPHA(1); end

%3.角位移、角速度、角加速度和滑块的位移、速度、加速度输出 figure(1); n1=1:361;

subplot(2,3,1); %绘角位移线图

plot(n1,theta2*du,n1,theta3*du,n1,theta4*du); title('角位移线图');

xlabel('曲柄转角\\theta_1/\\circ') ylabel('角位移/\\circ') grid on;hold on;

text(200,150,'\\theta_2') text(100,100,'\\theta_3') text(200,300,'\\theta_4')

subplot(2,3,2); %绘角速度线图 plot(n1,omega2,n1,omega3,n1,omega4); title('角速度线图');

xlabel('曲柄转角\\theta_1/\\circ') ylabel('角速度/rad\\cdots^{-1}') grid on;hold on;

text(200,-50,'\\omega_2') text(200,75,'\\omega_3') text(200,0,'\\omega_4')

subplot(2,3,3); %绘角加速度线图 plot(n1,alpha2,n1,alpha3,n1,alpha4); title('角加速度线图');

xlabel('曲柄转角\\theta_1/\\circ') ylabel('角加速度/rad\\cdots^{-2}')

grid on;hold on;

text(200,-2*10^4,'\\alpha_2') text(200,-10*10^4,'\\alpha_3') text(200,5*10^4,'\\alpha_4')

subplot(2,3,4); %绘滑块位移线图 plot(n1,s5);

title('滑块位移线图');

xlabel('曲柄转角\\theta_1/\\circ') ylabel('滑块位移/mm') grid on;hold on; text(150,300,'s_5')

subplot(2,3,5); %绘滑块速度线图 plot(n1,v5);

title('滑块速度线图');

xlabel('曲柄转角\\theta_1/\\circ') ylabel('速度/mm\\cdots^{-1}') grid on;hold on;

text(200,-0.5*10^4,'v_5')

subplot(2,3,6) %绘滑块加速度图 plot(n1,a5);

title('滑块加速度线图');

xlabel('曲柄转角\\theta_1/\\circ') ylabel('加速度/mm\\cdots^{-2}') grid on;hold on;

text(200,10*10^6,'a_5') %4.机构图形输出 figure(2); x(1)=0; y(1)=0;

x(2)=l1*cos(45*hd); y(2)=l1*sin(45*hd);

x(3)=x(2)+l2*cos(theta2(45)); y(3)=y(2)+l2*sin(theta2(45)); x(4)=-a; y(4)=b;

x(5)=2*x(4)-x(3); y(5)=2*y(4)-y(3);

x(6)=x(5)+l4*cos(theta4(45)); y(6)=b+c;

x(7)=x(6)+40; y(7)=y(6)+20; x(8)=x(6)+40; y(8)=y(6)-20; x(9)=x(6)-40;

y(9)=y(6)-20; x(10)=x(6)-40; y(10)=y(6)+20; x(11)=x(6)+40; y(11)=y(6)+20; i=1:6;

plot(x(i),y(i)); grid on;hold on; i=7:11;

plot(x(i),y(i));

plot(x(1),y(1),'o'); plot(x(2),y(2),'o'); plot(x(3),y(3),'o'); plot(x(4),y(4),'o'); plot(x(5),y(5),'o'); plot(x(6),y(6),'o'); title('曲柄滑块机构'); grid on;hold on; xlabel('mm') ylabel('mm')

axis([-400 500 -100 600]); %5.曲柄滑块机构运动仿真 figure(3)

m=moviein(20); j=0;

for n1=1:5:360 j=j+1; clf; x(1)=0; y(1)=0;

x(2)=l1*cos(n1*hd); y(2)=l1*sin(n1*hd);

x(3)=x(2)+l2*cos(theta2(n1)); y(3)=y(2)+l2*sin(theta2(n1)); x(4)=-a; y(4)=b;

x(5)=2*x(4)-x(3); y(5)=2*y(4)-y(3);

x(6)=x(5)+l4*cos(theta4(45)); y(6)=b+c;

x(7)=x(6)+40; y(7)=y(6)+20; x(8)=x(6)+40; y(8)=y(6)-20;

x(9)=x(6)-40; y(9)=y(6)-20; x(10)=x(6)-40; y(10)=y(6)+20; x(11)=x(6)+40; y(11)=y(6)+20; i=1:6;

plot(x(i),y(i)); grid on;hold on; i=7:11;

plot(x(i),y(i));

plot(x(1),y(1),'o'); plot(x(2),y(2),'o'); plot(x(3),y(3),'o'); plot(x(4),y(4),'o'); plot(x(5),y(5),'o'); plot(x(6),y(6),'o');

axis([-400 500 -100 600]); title('曲柄滑块机构仿真'); xlabel('mm'); ylabel('mm'); m(j)=getframe; end

movie(m);

子程序文件

function[theta,omega,OMEGA,alpha,ALPHA,s5,v5,a5]=crank_rocker(theta1,omega1,alpha1,l1,l2,lcd,lde,l4,a,b,c) %1.计算从动件的角位移和滑块5的位移

L1=sqrt((a+l1*cos(theta1))*(a+l1*cos(theta1))+(b-l1*sin(theta1))*(b-l1*sin(theta1)));

beta1=acos((L1*L1+l2*l2-lcd*lcd)/(2*L1*l2));

beta2=atan((a+l1*cos(theta1))/(b-l1*sin(theta1))); theta2=pi/2+beta1+beta2;

theta3=atan(-b/(a-(-l2*cos(theta2)-l1*cos(theta1)))); theta4=asin((c-lde*sin(theta3))/l4); theta=[theta1;theta2;theta3;theta4]; s5=l4*cos(theta4)+lde*cos(theta3); %2.计算从动件的角速度和滑块5的线速度

A=[-l2*sin(theta2),-lcd*sin(theta3);-l2*cos(theta2),-lcd*cos(theta3)];

B=[l1*sin(theta1);l1*cos(theta1)]; omega=A\\(omega1*B);

omega2=omega(1); omega3=omega(2);

C=[l4*sin(theta4),1;-l4*cos(theta4),0]; D=[-lde*sin(theta3);lde*cos(theta3)]; OMEGA=C\\(omega3*D); omega4=OMEGA(1); v5=OMEGA(2);

%3.计算从动件的角加速度和滑块5的加速度 A=[-l2*sin(theta2),lcd*sin(theta3); l2*cos(theta2),lcd*cos(theta3)];

At=[omega2*l2*cos(theta2),omega3*lcd*cos(theta3); omega2*l2*sin(theta2),omega3*lcd*sin(theta3)]; B=[omega1*l1*cos(theta1); omega1*l1*sin(theta1)]; alpha=A\\(At*omega+omega1*B); alpha2=alpha(1); alpha3=alpha(2);

C=[l4*sin(theta4),1; -l4*cos(theta4),0];

D=[-lde*sin(theta3),-omega3*lde*cos(theta3); lde*cos(theta3),-omega3*lde*sin(theta3)]; Ct=[omega4*l4*cos(theta4),0; omega4*l4*sin(theta4),0]; Dt=[alpha3;omega3];

ALPHA=C\\(D*Dt-Ct*OMEGA); alpha4=ALPHA(1); a5=ALPHA(2);

4、计算结果

下图为六杆机构的运动线图:

本文来源:https://www.bwwdw.com/article/26fx.html

Top