基于MATLAB软件的凸轮轮廓曲线设计.docx
《基于MATLAB软件的凸轮轮廓曲线设计.docx》由会员分享,可在线阅读,更多相关《基于MATLAB软件的凸轮轮廓曲线设计.docx(11页珍藏版)》请在冰豆网上搜索。
基于MATLAB软件的凸轮轮廓曲线设计
基于MATLAB软件的凸轮轮廓曲线设计
摘 要:
以偏置移动从动件盘形凸轮为例,基于MATLAB软件对凸轮轮廓曲线进展了解析法设计.绘制出轮廓曲线。
运行结果说明:
在从动件运动规律确定的情况下,利用MATLAB软件以很方便、快捷地得到凸轮的轮廓曲线。
关 键 词:
凸轮机构;凸轮轮廓曲线;MATLAB;解析法
前言
凸轮轮廓曲线的设计,一般可分为图解法和解析法.利用图解法能比拟方便地绘制出各种平面凸轮的轮廓曲线.但这种方法仅适用于比拟简单的构造,用它对复杂构造进展设计那么比拟困难,而且利用图解法进展构造设计,作图误差较大,对一些精度要求高的构造不能满足设计要求。
解析法可以根据设计要求,通过推导机构中各局部之间的几何关系,建立相应的方程,准确地计算出轮廓线上各点的坐标,然后把凸轮的轮廓曲线准确地绘制出来.但是,当从动件运动规律比拟复杂时,利用解析法获得凸轮的轮廓曲线的工作量比拟大.而MATLAB软件提供了强大的矩阵处理和绘图功能,具有核心函数和工具箱.其编程代码接近数学推导公式,简洁直观,操作简易,人机交互性能好,且可以方便迅速地用三维图形、图像、声音、动画等表达计算结果、拓展思路[1]。
因此,基于MATLAB软件进展凸轮机构的解析法设计,可以解决设计工作量大的问题。
本文基于MATLAB软件进展凸轮轮廓曲线的解析法设计,利用?
机械原理?
课程的计算机辅助教学,及常用机构的计算机辅助设计.其具体方法为首先准确地计算出轮廓线上各点的坐标,然后运用MATLAB绘制比拟准确的凸轮轮廓曲线。
1设计的意义与条件
1.1意义
凸轮机构是由具有曲线轮廓或凹槽的构件,通过高副接触带动从动件实现预期运动规律的一种高副机构,它广泛地应用于各种机械,特别是自动机械、自动控制装置和装配生产线中,是工程实际中用于实现机械化和自动化的一种常用机构。
所以,在凸轮的加工中,准确确实定凸轮的轮廓,这对于保证凸轮所带动从动件的运动规律是尤为重要的。
1.2条件
偏置移动从动件盘形凸轮设计条件〔图1〕:
凸轮作逆时针方向转动,从动件偏置在凸轮轴心的右边
从动件在推程作等加速/等减速运动,在回程作余弦加速度运动
基圆半径rb=40mm,滚子半径rt=10mm,推杆偏距e=15mm,
推程升程h=50mm,推程运动角ft=100度,远休止角fs=60度
回程运动角fh=90度,推程许用压力角alp=35度。
图1偏移动从动件盘形凸轮机构
2.利用解析法设计凸轮轮廓线
所谓的用解析法设计凸轮轮廓线,就是根据工作要求的从动件的运动规律和的机构参数,求出凸轮轮廓线的方程式,并准确地计算出凸轮轮廓线上各点的坐标值。
随着机械不断朝着高速、精细、自动化方向开展,以及计算机和各种数控加工机床在生产中的广泛应用,用解析法设计凸轮轮廓线具有了更大的现实意义,并且正在越来越广泛地用于生产。
查阅文献[1],得到偏置移动滚子从动件盘形凸轮机构确定凸轮轮廓相关的方程式。
3利用MATLAB软件编程并运行程序
3.1MATLAB程序
disp'********偏置移动从动件盘形凸轮设计********'
disp'条件:
'
disp'凸轮作逆时针方向转动,从动件偏置在凸轮轴心的右边'
disp'从动件在推程作等加速/等减速运动,在回程作余弦加速度运动'
rb=40;rt=10;e=15;h=50;ft=100;fs=60;fh=90;alp=35;
fprintf(1,'基圆半径rb=%3.4fmm\n',rb)
fprintf(1,'滚子半径rt=%3.4fmm\n',rt)
fprintf(1,'推杆偏距e=%3.4fmm\n',e)
fprintf(1,'推程升程h=%3.4fmm\n',h)
fprintf(1,'推程运动角ft=%3.4f度\n',ft)
fprintf(1,'远休止角fs=%3.4f度\n',fs)
fprintf(1,'回程运动角fh=%3.4f度\n',fh)
fprintf(1,'推程许用压力角alp=%3.4f度\n',alp)
hd=pi/180;du=180/pi;
se=sqrt(rb^2-e^2);
d1=ft+fs;d2=ft+fs+fh;
disp''
disp'计算过程和输出结果:
'
disp'1-计算凸轮理论轮廓的压力角和曲率半径'
disp'1-1推程(等加速/等减速运动)'
s=zeros(ft);ds=zeros(ft);d2s=zeros(ft);
at=zeros(ft);atd=zeros(ft);
forf=1:
ft
iff<=ft/2
s(f)=2*h*f^2/ft^2;s=s(f);
ds(f)=4*h*f*hd/(ft*hd)^2;ds=ds(f);
d2s(f)=4*h/(ft*hd)^2;d2s=d2s(f);
else
s(f)=h-2*h*(ft-f)^2/ft^2;s=s(f);
ds(f)=4*h*(ft-f)*hd/(ft*hd)^2;ds=ds(f);
d2s(f)=-4*h/(ft*hd)^2;d2s=d2s(f);
end
at(f)=atan(abs(ds-e)/(se+s));atd(f)=at(f)*du;
end
disp'1-2回程(余弦加速度运动)'
s=zeros(fh);ds=zeros(fh);d2s=zeros(fh);
ah=zeros(fh);ahd=zeros(fh);ph=zeros(fh);
forf=d1:
d2
k=f-d1;
s(f)=.5*h*(1+cos(pi*k/fh));s=s(f);
ds(f)=-.5*pi*h*sin(pi*k/fh)/(fh*hd);ds=ds(f);
d2s(f)=-.5*pi^2*h*cos(pi*k/fh)/(fh*hd)^2;d2s=d2s(f);
ah(f)=atan(abs(ds+e)/(se+s));ahd(f)=ah(f)*du;
p1=((se+s)^2+(ds-e)^2)^1.5;
p2=abs((se+s)*(d2s-se-s)-(ds-e)*(2*ds-e));
ph(f)=p1/p2;p=ph(f);
end
disp'2-计算凸轮理论廓线与实际廓线的直角坐标'
n=360;
s=zeros(n);ds=zeros(n);x=zeros(n);y=zeros(n);dx=zeros(n);dy=zeros(n);
xx=zeros(n);yy=zeros(n);xp=zeros(n);yp=zeros(n);
xxp=zeros(n);yyp=zeros(n);
forf=1:
n
iff<=ft/2
s(f)=2*h*f^2/ft^2;s=s(f);
ds(f)=4*h*f*hd/(ft*hd)^2;ds=ds(f);
elseiff>ft/2&f<=ft
s(f)=h-2*h*(ft-f)^2/ft^2;s=s(f);
ds(f)=4*h*(ft-f)*hd/(ft*hd)^2;ds=ds(f);
elseiff>ft&f<=d1
s=h;ds=0;
elseiff>d1&f<=d2
k=f-d1;
s(f)=.5*h*(1+cos(pi*k/fh));s=s(f);
ds(f)=-.5*pi*h*sin(pi*k/fh)/(fh*hd);ds=ds(f);
elseiff>d2&f<=n
s=0;ds=0;
end
xx(f)=(se+s)*sin(f*hd)+e*cos(f*hd);x=xx(f);
yy(f)=(se+s)*cos(f*hd)-e*sin(f*hd);y=yy(f);
dx(f)=(ds-e)*sin(f*hd)+(se+s)*cos(f*hd);dx=dx(f);
dy(f)=(ds-e)*cos(f*hd)-(se+s)*sin(f*hd);dy=dy(f);
xp(f)=x+rt*dy/sqrt(dx^2+dy^2);xxp=xp(f);
yp(f)=y-rt*dx/sqrt(dx^2+dy^2);yyp=yp(f);
r(f)=sqrt(x^2+y^2);
rp(f)=sqrt(xxp^2+yyp^2);
end
disp'2-1推程(等加速/等减速运动)'
disp'凸轮转角理论x理论y实际x实际y'
forf=10:
10:
ft
nu=[fxx(f)yy(f)xp(f)yp(f)];
disp(nu)
end
disp'2-2回程(余弦加速度运动)'
disp'凸轮转角理论x理论y实际x实际y'
forf=d1:
10:
d2
nu=[fxx(f)yy(f)xp(f)yp(f)];
disp(nu)
end
disp'绘制凸轮的理论轮廓和实际轮廓:
'
plot(xx,yy,'r-.')%理论轮廓(红色,点划线)
axis([-(rb+h-10)(rb+h+10)-(rb+h+10)(rb+rt+10)])%横轴和纵轴的下限和上限
axisequal%横轴和纵轴的尺度比例一样
text(rb+h+3,0,'X')%标注横轴
text(0,rb+rt+3,'Y')%标注纵轴
text(-5,5,'O')%标注直角坐标系原点
title('偏置移动从动件盘形凸轮设计')%标注图形标题
holdon;%保持图形
plot([-(rb+h)(rb+h)],[00],'k')%横轴(黑色)
plot([00],[-(rb+h)(rb+rt)],'k')%纵轴(黑色)
plot([ee],[0(rb+rt)],'k--')%初始偏置位置(黑色,虚线)
ct=linspace(0,2*pi);%画圆的极角变化围
plot(rb*cos(ct),rb*sin(ct),'g')%基圆(绿色)
plot(e*cos(ct),e*sin(ct),'c--')%偏距圆(蓝绿色,虚线)
plot(e+rt*cos(ct),se+rt*sin(ct),'m')%滚子圆(紫色)
plot(xp,yp,'b')%实际轮廓(蓝色)
text(3,-68,'实际轮廓线')%标注实际轮廓线
text(61,32,'理想轮廓线')%标注理想轮廓线
text(22,50,'滚子轮廓线')%标注滚子轮廓线
text(-18,-22,'偏心距圆轮廓线')%标注偏心距圆轮廓线
text(6,-46,'基圆轮廓线')%标注基圆轮廓线
3.2运行的结果
********偏置移动从动件盘形凸轮设计********
条件:
凸轮作逆时针方向转动,从动件偏置在凸轮轴心的右边
从动件在推程作等加速/等减速运动,在回程作余弦加速度运动
基圆半径rb=40.0000mm
滚子半径rt=10.0000mm
推杆偏距e=15.0000mm
推程升程h=50.0000mm
推程运动角ft=100.0000度
远休止角fs=60.0000度
回程运动角fh=90.0000度
推程许用压力角alp=35.0000度
计算过程和输出结果:
1-计算凸轮理论轮廓的压力角和曲率半径
1-1推程(等加速/等减速运动)
1-2回程(余弦加速度运动)
2-计算凸轮理论廓线与实际廓线的直角坐标
2-1推程(等加速/等减速运动)
凸轮转角理论x理论y实际x实际y
10.000021.384834.897718.744025.2527
20.000028.145933.473226.566023.5988
30.000036.030932.407334.778822.4860
40.000045.610531.020643.900421.1679
50.000057.198628.414254.487018.7889
60.000069.057922.550163.103014.5165
70.000078.502412.609970.20607.0270
80.000084.4235-0.345374.7846-3.0083
90.000086.0810-15.000076.0894-14.5890
100.000083.1533-29.893673.7429-26.5105
2-2回程(余弦加速度运动)
凸轮转角理论x理论y实际x实际y
160.000015.6881-86.959713.9127-77.1185
170.00000.0875-86.87801.9206-77.0474
180.0000-15.0000-81.2321-9.9808-72.5829
190.0000-27.7230-70.8432-20.2897-64.1539
200.0000-36.8131-57.2861-27.8219-52.9092
210.0000-41.8603-42.5041-32.0770-40.4336
220.0000-43.3607-28.3394-33.3609-28.2733
230.0000-42.5280-16.1041-32.6176-17.4398
240.0000-40.9188-6.3040-31.0634-7.9985
250.0000-39.97501.4129-29.98131.0597
绘制凸轮的理论轮廓和实际轮廓〔见图2〕:
图2用MATLAB绘制凸轮的轮廓图
4设计总结
通过编程的结果的分析可以得知,利用MATLAB的强大计算功能能够很好地实现凸轮机构的设计计算、廓线绘制。
再者,在绘制完凸轮轮廓之后,还可以编制MATLAB程序对凸轮进展运动学仿真,这样更能表达出能否很好地到达所以设计的凸轮机构预期的运动规律。
最后,通过程序的设计和运行的结果可知,只要改变输入的参数就可以得到与之对应的轮廓线,这样实现了参数化设计,具有着高效和便利和快捷的优点。
参考文献
[1]申永胜.机械原理教程[M].:
清华大学,2005.12.103~104
[2]原思聪.MATLAB语言及机械工程应用[M].:
机械工业,2008.
[3]燕.用MATLAB实现平动从动件凸轮机构的设计和运动仿真[J].理工大学学报,2003.27(4)
[4]霞,本学,三川.基于MATLAB软件的凸轮轮廓曲线设计及从动件运动学仿真[J].中原工学院学报,2012.23
(1)
[5]吴晓明,雷亚勇.基于MATLAB和EXCEL设计凸轮轮廓曲线[J].现代制造工程,2007.1
(1)
[6]邬文杰.基于MATLAB的凸轮轮廓曲线计算机辅助设计[J].机电工程技术,2002,31
(1):
38-38
[7]王建卫,曲中水,凌滨.MATLAB7.X程序设计[M].:
中国水利水电,2007