资源描述:
《用解析法作牛头刨床的运动分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、机械原理报告——牛头刨床机构分析题目:图3-12所示为一牛头刨床的机构运动简图。设已知各构件的尺寸为:L1=125mm,L3=600mm,L4=150mm,原动件1的方位角Θ1=0°~360°和等角速度w1=1rad/s。试用矩阵法求该机构中各从动件的方位角、角速度和角加速度以及E点的位移、速度和加速度的运动图线。用解析法作牛头刨床的运动分析—Matlab程序一、题意分析:如图先建立坐标系,并标出各构建的尺寸为:=125mm,=600mm,=150mm,原动件1的方位角==-?和等角速度=1rad/s。试用矩阵法求该机构中各从动的方位角、角速度、和角加速度以及E点的
2、位移、速度和加速度的运动曲线图。解:如图所示,先建立一直角坐标系,并标出各矢量及其方位角。其中共有四个未知量及。为求解需要建立两个封闭矢量方程,为此需要利用两个封闭图形ABCA及CDEGC,由此可得?+=??????+?=?+并写成投影方程为cos=cossin=+sincos+cos-=0sin+sin=由以上各式即可求得、、、四个运动变量,而滑块2的方位角=然后,分别将上列各式对时间取一次二次导数,并写成矩阵形式,即得一下速度和加速度方程:==+二、程序流程图定义程序变量↓列出S3,Theta3,Se的表达式↓对S3,Theta3,Se分别求一次、二次导数↓将上
3、面导数写成矩阵形式↓将位移、速度、加速度的运动线分别存放在同一图中三、源程序:clearall;clc;w1=1;l1=0.125;l3=0.6;l6=0.275;l61=0.575;l4=0.15;form=1:3601o1(m)=pi*(m-1)/1800;o31(m)=atan((l6+l1*sin(o1(m)))/(l1*cos(o1(m))));ifo31(m)>=0o3(m)=o31(m);elseo3(m)=pi+o31(m);end;s3(m)=(l1*cos(o1(m)))/cos(o3(m));o4(m)=pi-asin((l61-l3*sin(
4、o3(m)))/l4);se(m)=l3*cos(o3(m))+l4*cos(o4(m));ifo1(m)==pi/2o3(m)=pi/2;s3(m)=l1+l6;endifo1(m)==3*pi/2o3(m)=pi/2;s3(m)=l6-l1;endA1=[cos(o3(m)),-s3(m)*sin(o3(m)),0,0;sin(o3(m)),s3(m)*cos(o3(m)),0,0;0,-l3*sin(o3(m)),-l4*sin(o4(m)),-1;0,l3*cos(o3(m)),l4*cos(o4(m)),0];B1=w1*[-l1*sin(o1(m));l
5、1*cos(o1(m));0;0];D1=A1B1;E1(:,m)=D1;ds(m)=D1(1);w3(m)=D1(2);w4(m)=D1(3);ve(m)=D1(4);A2=[cos(o3(m)),-s3(m)*sin(o3(m)),0,0;sin(o3(m)),s3(m)*cos(o3(m)),0,0;0,-l3*sin(o3(m)),-l4*sin(o4(m)),-1;0,l3*cos(o3(m)),l4*cos(o4(m)),0];B2=-[-w3(m)*sin(o3(m)),(-ds(m)*sin(o3(m))-s3(m)*w3(m)*cos(o3(m)
6、)),0,0;w3(m)*cos(o3(m)),(ds(m)*cos(o3(m))-s3(m)*w3(m)*sin(o3(m))),0,0;0,-l3*w3(m)*cos(o3(m)),-l4*w4(m)*cos(o4(m)),0;0,-l3*w3(m)*sin(o3(m)),-l4*w4(m)*sin(o4(m)),0]*[ds(m);w3(m);w4(m);ve(m)];C2=w1*[-l1*w1*cos(o1(m));-l1*w1*sin(o1(m));0;0];B=B2+C2;D2=A2B;E2(:,m)=D2;dds(m)=D2(1);a3(m)=D2(
7、2);a4(m)=D2(3);ae(m)=D2(4);end;o11=o1*180/pi;y=[o3*180/pi;o4*180/pi];w=[w3;w4];a=[a3;a4];figure(1);plotyy(o11,y,o11,se);axisequal;title('位置线图');xlabel('ittheta1');ylabel('ittheta3,theta4,Se');gridon;figure(2);h2=plotyy(o11,w,o11,ve);title('速度线图');xlabel('ittheta1');ylabel('it