资源描述:
《机械原理大作业1(连杆机构)27题matlab程序.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、附录:程序清单yy=(0:0.1:360);%杆AB的角位移,每隔0.1度计数yy1=yy/180*pi;%转化为弧度xb=280*cos(yy1);%点B的x坐标yb=280*sin(yy1);%点B的y坐标w=10;%杆AB的角速度vxb=-w*yb;%点B的速度在x方向的分量vyb=w*xb;%点B的速度在y方向的分量axb=-w*w*xb;%点B的加速度在x方向的分量ayb=-w*w*yb;%点B的加速度在y方向的分量xd=0;%点D的x坐标yd=160;%点D的y坐标vxd=0;%点D的速度在x方向的分量vyd=0;%点D的速度在y方向的
2、分量axd=0;%点D的加速度在x方向的分量ayd=0;%点D的加速度在y方向的分量jbcd=ones(1,3601);%给角BCD赋初值fdb=ones(1,3601);%?给角BD赋初值li=350;%杆BC的长度lj=320;%杆CD的长度lbd=ones(1,3601);%给BD赋初值fi=ones(1,3601);%给杆BC的角位移赋初值fj=ones(1,3601);%给杆CD的角位移赋初值xc=ones(1,3601);%给点Cx坐标赋初值yc=ones(1,3601);%给点Cy坐标赋初值ci=ones(1,3601);%给中间变量
3、赋初值cj=ones(1,3601);%给中间变量赋初值wi=ones(1,3601);%给杆BC的角速度赋初值wj=ones(1,3601);%给杆CD的角速度赋初值ss=ones(1,3601);%给ss赋初值ffg=ones(1,3601);%给构件5的角位移赋初值xg=-25;%点G的x坐标yg=80;%点G的y坐标vxg=0;%点G的速度在x方向的分量vyg=0;%点G的速度在y方向的分量axg=0;%点G的加速度在x方向的分量ayg=0;%点G的加速度在y方向的分量wgf=ones(1,3601);%给杆GF的角速度赋初值%求角BCD,
4、角BDform=1:3601lbd(1,m)=sqrt((xd-xb(1,m))^2+(yd-yb(1,m))^2);if(lbd(1,m)<(li+lj)&&lbd(1,m)>abs(lj-li))jbcd(1,m)=acos((li*li+lbd(1,m)*lbd(1,m)-lj*lj)/(2*li*lbd(1,m)));elseiflbd(1,m)==(li+lj)jbcd(1,m)=0;elseif(lbd(1,m)==abs(lj-li)&&(li>lj))jbcd(1,m)=0;elseif(lbd(1,m)==abs(lj-li)&&
5、(lixb(1,m)&&yd>=yb(1,m))fdb(1,m)=atan((yd-yb(1,m))/(xd-xb(1,m)));elseif(xd==xb(1,m)&&yd>yb(1,m))fdb(1,m)=pi/2;elseif(xd=yb(1,m))fdb(1,m)=atan((yd-yb(1,m))/(xd-xb(1,m)))+pi;elseif(xd==xb(1,m)&&ydxb(1,m)&
6、&yd7、n)>xd&&yc(1,n)>=yd)fj(1,n)=atan((yc(1,n)-yd)/(xc(1,n)-xd));elseif(xc(1,n)==xd&&yc(1,n)>yd)fj(1,n)=pi/2;elseif(xc(1,n)=yd)fj(1,n)=atan((yc(1,n)-yd)/(xc(1,n)-xd))+pi;elseif(xc(1,n)8、xd&&yc(1,n)<=yd)fj(1,n)=ata