matlab凸轮机构设计《课程设计》报告

  • 格式:pdf
  • 大小:315.94 KB
  • 文档页数:8

课程设计说明书
学生姓名:付正宋丁王钢专业班级:工设10-1
指导教师:黄华贵
得分:
答辩时间:
目录
第一章设计任务 (3)
1.1设计题目 (3)
1.2功能要求 (3)
第二章MATLAB软件设计过程 (3)
2.1基本理论公式 (3)
2.2设计流程 (3)
23界面设计 (4)
24主要代码 (5)
第三章软件使用演示 (7)
3.1演示算例1 (7)
3.2演示算例2 (7)
第四章设计心得体会 (8)
参考文献 (8)
第一章设计任务
1.1设计题目
平面凸轮结构设计
1.2功能要求
凸轮理论轮廓曲线,
第二章MATLAB软件设计过程
2.1基本理论公式
凸轮推程理论轮廓:x=(r0+s)sinδ;y=(r0+s)cosδ;
凸轮推程理论轮廓:x=(r0+s1)sinδ;y=(r0+s1)cosδ;
凸轮转过的角度--δ
凸轮推程运动角--δ0
凸轮回程运动角--δ10
凸轮基圆半径--r0
2.2设计流程
(1)针对设计对象,查阅相关资料(机械零件、机械原理),确定设计流程;
(2)整理设计计算公式、图表数据;
(3)按设计流程进行GUI界面设计;
(4)编制设计计算程序(*.m文件);
(5)程序调试,编写设计计算软件说明书:
①软件总体功能介绍;
②设计计算公式;
③软件设计流程;
④设计实例——界面截图;
2.3界面设计
1.设计工具:
MatlabGUI工具。

2.思路:
通过软件输入不同的数据观察凸轮结构
3.结果截图
4.结构原理说明:文本框中输入基本数据,通过点击界面按钮来绘制题目要求中的两条曲线,远休止角的大小为第四第五个文本框中输入数值的差,凸轮回程运动角大小为第五第六文本框中输入数值的差,以此类推。

2.4主要代码
h=str2double(get(handles.edit1,'string'));
w=str2double(get(handles.edit2,'string'));
rb=str2double(get(handles.edit3,'string'));
e=str2double(get(handles.edit4,'string'));
rr=str2double(get(handles.edit5,'string'));
s0=sqrt(rb*rb-e*e);
q=120*pi/180;
qs=(120+h)*pi/180;
q1=(120+h+150)*pi/180;
for i=1:1:120
qq(i)=i*pi/180.0;
s1=(h*qq(i)/q)-(h/(2*pi))*sin(2*pi*qq(i)/q);
v1=w*(h/q)-(w*h/q)*cos(2*pi*qq(i)/q);
x(i)=(s0+s1)*sin(qq(i))+e*cos(qq(i));y(i)=(s0+s1)*cos(q q(i))-e*sin(qq(i));
a(i)=(s0+s1)*cos(qq(i))-e*sin(qq(i))+v1/w*sin(qq(i));b( i)=-(s0+s1)*sin(qq(i))-e*cos(qq(i))+v1/w*cos(qq(i)); xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));yy(i)=y(i) -rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));
end
for i=121:1:150
qq(i)=i*pi/180;
s2=h;v2=0;
x(i)=(s0+s2)*sin(qq(i))+e*cos(qq(i));y(i)=(s0+s2)*cos(q q(i))-e*sin(qq(i));
a(i)=(s0+s2)*cos(qq(i))-e*sin(qq(i))+v2/w*sin(qq(i));b( i)=-(s0+s2)*sin(qq(i))-e*cos(qq(i))+v2/w*cos(qq(i)); xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));yy(i)=y(i) -rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));
end
for i=151:1:300
qq(i)=i*pi/180;qq1(i)=qq(i)-150*pi/180;
s3=h-h*qq1(i)/(q1-qs);v3=-w*h/(q1-qs);
x(i)=(s0+s3)*sin(qq(i))+e*cos(qq(i));y(i)=(s0+s3)*cos(q q(i))-e*sin(qq(i));
a(i)=(s0+s3)*cos(qq(i))-e*sin(qq(i))+v3/w*sin(qq(i));b( i)=-(s0+s3)*sin(qq(i))-e*cos(qq(i))+v3/w*cos(qq(i));
xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));yy(i)=y(i) -rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));
end
for i=301:1:360
qq(i)=i*pi/180;
x(i)=(s0+0)*sin(qq(i))+e*cos(qq(i));y(i)=(s0+0)*cos(qq( i))-e*sin(qq(i));
a(i)=(s0+0)*cos(qq(i))-e*sin(qq(i))+v3/w*sin(qq(i));b(i) =-(s0+0)*sin(qq(i))-e*cos(qq(i))+v3/w*cos(qq(i));
xx(i)=x(i)+rr*b(i)/sqrt(a(i)*a(i)+b(i)*b(i));yy(i)=y(i) -rr*a(i)/sqrt(a(i)*a(i)+b(i)*b(i));
end
plot(x,y,'r',xx,yy,'g')
text(0,20,'实际轮廓曲线')
text(65,40,'理论轮廓曲线')
hold on
for i=1:5:360
for j=1:1:360
xxx(j)=x(i)+rr*cos(j*pi/180);
yyy(j)=y(i)+rr*sin(j*pi/180);
end
plot(xxx,yyy)
end
hold on
第三章软件使用演示3.1演示算例1
3.2演示算例2
第四章设计心得体会
应用MatLab优化工具箱进行优化设计问题求解,编程工作量小,初始参数输入简单,符合工程设计语言,提高设计效率。

与传统的求解结果相比较不仅提高了设计精度,而且优化工具箱的优化算法更加具有可靠性。

参考文献
1申永胜.机械原理教程.北京:清华大学出版社,1999.
91~92
2钱志良,冯志华.平面运动从动件盘形凸轮机构及其
综合研究.机械设计,2003(1):10~11。