资源描述:
《机械原理总复习题及解答第十章》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第十章(附录)常用MATLAB电算编程10.1连杆机构的电算程序10.1.1如图10.1所示是一铰链四杆机构,试按以下给定的两连架杆对应位置用解析法编写设计四杆机构的程序:1)对应主动构件转角f的三个位置f1、f2、f3,满足从动件转角的三个对应位置p1、p2、p32)对应主动构件转角f的三个位置f1、f2、f3、f4、f5,满足从动件转角的三个对应位置p1、p2、p3、p4、p5图10.1连杆设计(1)图10.2连杆设计(2)10.1.2若已知图10.2机构的最大传动角和最小传动角以及尺寸a,d,试编制电算程序求b,c10.1.3若已知图10.2机构的极位夹角f和曲柄长a以及摇杆的
2、摆角p和长度c,试编制电算程序求连杆长b和机架长d10.1.4若已知图10.1机构中连杆在三个位置与X轴方向的夹角和连杆上一点m的三个位置坐标,并且已知固定转动副A,D的坐标,试编制电算程序求连杆上B,C点的一组坐标,从而设计出该机构。10.2凸轮机构的电算程序10.2.1图10.3是滚子直动从动件盘形凸轮在工作中的一个位置,试根据此图编制电算程序求出凸轮轮廓。图10.3滚子直动从动件盘形凸轮14410.2.2试编制求凸轮最大压力角的程序10.3齿轮范成实验演示程序10.3.1编制一个加工齿轮的范成实验演示程序第10章常用MATLAB电算编程题解答与分析10.1连杆机构的电算程序10
3、.1.1解:1)根据教材中的推导,令得:(10-1)把对应位置的已知条件代入以上算式解方程组即可。为方便起见取f0=p0=0以方便编程。functionlinkage3(d,f1,p1,f2,p2,f3,p3)f1=f1*pi/180;f2=f2*pi/180;f3=f3*pi/180;p1=p1*pi/180;p2=p2*pi/180;p3=p3*pi/180;fc='r1-r2*cos(f)+r3*cos(p)=cos(f-p)';s1=subs(fc,'f',f1);s1=subs(s1,'p',p1);s1=vpa(s1);s2=subs(fc,'f',f2);s2=subs
4、(s2,'p',p2);s2=vpa(s2);s3=subs(fc,'f',f3);s3=subs(s3,'p',p3);s3=vpa(s3);[r1,r2,r3]=solve(s1,s2,s3,'r1','r2','r3');a=d/(r3)c=d/(r2)b=sqrt(a^2+c^2+d^2-2*a*c*r1)例如:若已知图10.1中d=50,a杆转角f为45o、90o、135o对应c杆转角p为52o、82o、112o可调用:>>linkage3(50,45,52,90,82,135,112)a=27.629285658965426760636076548711c=41.1103
5、55468665232376141549605063b=57.2362894665213494750616056630382)对于5个位置要求的情况,在程序中我们设定:对应图10.1,已知d,对应主动件a的转角f1、f2、f3、f4、f5,从动件有转角p1、p2、p3、p4、p5。因不是线性方程,要采用非线形方程解答的指令,即首先要选一组初选向量r:144,各分量依次代表方程(10-1)中的R1、R2、R3和转角初值f0、p0。计算结果是它们的值,存放在向量y中,,显然也就是:R1=y(1);R2=y(2);R3=y(3);f0=y(4);p0=y(5)。程序文件如下:functio
6、ny=linkage5(r)f1=35*pi/180;p1=5.5*pi/180;;f2=80*pi/180;;p2=34*pi/180;;f3=110*pi/180;;p3=54.2*pi/180;;f4=130*pi/180;;p4=66.8*pi/180;;f5=150*pi/180;;p5=77*pi/180;;y(1)=r(1)-r(2)*cos(f1+r(4))+r(3)*cos(p1+r(5))-cos((f1-p1)+(r(4)-r(5)));y(2)=r(1)-r(2)*cos(f2+r(4))+r(3)*cos(p2+r(5))-cos((f2-p2)+(r(4)
7、-r(5)));y(3)=r(1)-r(2)*cos(f3+r(4))+r(3)*cos(p3+r(5))-cos((f3-p3)+(r(4)-r(5)));y(4)=r(1)-r(2)*cos(f4+r(4))+r(3)*cos(p4+r(5))-cos((f4-p4)+(r(4)-r(5)));y(5)=r(1)-r(2)*cos(f5+r(4))+r(3)*cos(p5+r(5))-cos((f5-p5)+(r(4)-r(5)));y=[y(1)y(