单缸四冲程柴油机凸轮机构设计教学资料Word文件下载.docx
- 文档编号:4054861
- 上传时间:2023-05-02
- 格式:DOCX
- 页数:19
- 大小:316.66KB
单缸四冲程柴油机凸轮机构设计教学资料Word文件下载.docx
《单缸四冲程柴油机凸轮机构设计教学资料Word文件下载.docx》由会员分享,可在线阅读,更多相关《单缸四冲程柴油机凸轮机构设计教学资料Word文件下载.docx(19页珍藏版)》请在冰点文库上搜索。
1)计算从动件位移和速度。
绘制线图(坐标纸或计算机绘制)。
2)用计算机语言按照许用压力角确定凸轮机构的基本尺寸,选滚子半径,画凸轮的实际轮廓曲线,并按比例绘出机构运动简图(A2图纸)。
3)编写出计算说明书。
指导教师:
YYYYY
开始日期:
XX年XX月XX日
完成日期:
XX年XX月XX日。
二、设计过程及数学模型的建立
2.1、设计思想
1)首先,任取一个基圆半径r0,计算出位移s、速度v、加速度a,画出位移s、速度v、加速度a随旋转角δ变化的曲线图;
其次,把圆周分为72等份,算出静态时的凸轮理论和实际轮廓线各点坐标值,将其分别放入x[]、y[]、xx[]、yy[]数组中;
然后,再利用坐标旋转(x=x*cosθ+y*sinθ;
y=x*sinθ-y*cosθ),从而模拟出凸轮的运动。
2.2基圆半径选择
因为基圆半径r0≥35mm,所以选基圆半径r0=40mm。
2.3数学模型
推程时:
等加速:
0≤δ≤5π/36
,
等减速:
5π/36≤δ≤5π/18
,
远休止:
s=h,v=0,a=0
回程时:
近休止:
s=0,v=0,a=0
如图所示,已知从动件运动规律为s=s(δ),基圆半径为r0,滚子半径为Rt,偏心距为e,设计盘行凸轮机构。
如图,选取xOy坐标系,B0点为凸轮轮廓线起点。
开始时滚子中心处于B0点处,当凸轮转过δ角度时,推杆位移为s。
由反转法作图可看出,此时滚子中心处于B点,其坐标为
x=(r0+s)sinδ,
y=(r0+s)cosδ
(1)
即凸轮的理论轮廓线方程。
因为实际轮廓线与理论轮廓线为等距线,即法向距离处处相等,都为滚子半径Rt。
故将理论轮廓线上的点沿法向内侧移动距离Rt,即得实际轮廓线上的点B′(x′,y′)。
由高等数学知,理论轮廓线B点处法线nn的斜率(与切线斜率互为负倒数)应为
(2)
根据
(1)式子有
(3)
可得
(4)
实际轮廓线上对应点B′(x′,y′)的坐标为
(5)
三、程序框图
凸轮工作一周时,δ从0到2π变化,每一个δ对应一个轮廓上的点,所以有无穷多点,计算机编程时不能都计算出来,只能计算出有限多个点,首先应将0到2π离散为N个点,δi=2π/N,(I=0,1,2……,N-1),N越大,则精度越高。
输入从动件运动规律s=s(δ)
输入精度控制数N
输入基圆半径r0,滚子半径Rt,偏置距e
作循环,for(I=0;
j<
=N-1;
j++)
求B(x,y)坐标,注意到
δi=2π/N,(I=0,1,2……,N-1)
手算ds/dδ表达式,并带入(4)式
求B′(x′,y′)
存储计算结果
输出计算结果
建立坐标轴
绘制凸轮轮廓曲线
四、程序清单及运行结果
#include<
math.h>
dos.h>
graphics.h>
conio.h>
stdio.h>
#definep3.1415926
#defineh20
#definer040.0
#definert10.0
intplot(s,x,y,xx,yy)
floats[75],x[75],y[75],xx[75],yy[75];
{inti,j,n=73,gd=DETECT,gmode=0,linestyle,k;
floatdt;
initgraph(&
gd,&
gmode,"
c:
\\tc"
);
for(k=0;
k<
3;
k++)
{for(j=0;
n;
{delay(1000);
dt=1.0/36.0*p*j;
cleardevice();
setlinestyle(2,4,1);
line(200,250,400,250);
line(300,150,300,350);
setlinestyle(0,4,1);
setcolor(4);
circle(2*(x[0])+300,2*(-y[0])+250-2*s[j],2*10);
line(2*(x[0])+300,150,2*(x[0])+300,40*(-y[0])+25040*s[j]);
setcolor
(1);
setcolor(11);
circle(300,250,2*40);
moveto(2*(xx[0]*cos(dt)+yy[0]*sin(-dt))+300,2*(-(yy[0]*cos(dt)-xx[0]*sin(-dt)))+250);
for(i=0;
i<
i++)
{
lineto(2*(xx[i]*cos(dt)+yy[i]*sin(dt))+300,2*(yy[i]*cos(dt)-xx[i]*sin(-dt))+250);
}
moveto(2*(x[0]*cos(dt)+y[0]*sin(-dt))+300,2*(-(y[0]*cos(dt)-x[0]*sin(-dt)))+250);
setcolor(5);
lineto(2*(x[i]*cos(dt)+y[i]*sin(-dt))+300,2*(-(y[i]*cos(dt)-x[i]*sin(-dt)))+250);
getch();
}
main()
{intgd=DETECT,gm;
inti,j,mm;
floats[75],t1,x[75],y[75],dx[75],dy[75],xx[75],yy[75],si[75],co[75],v[75],a[75],w=0.5;
initgraph(&
gm,"
"
t1=0.0;
6;
{s[i]=2*h*t1*t1/((5*p/18)*(5*p/18));
x[i]=(r0+s[i])*sin(t1);
y[i]=(r0+s[i])*cos(t1);
dx[i]=(4*h*t1/((5*p/18)*(5*p/18)))*sin(t1)+(r0+s[i])*cos(t1);
dy[i]=(4*h*t1/((5*p/18)*(5*p/18)))*cos(t1)-(r0+s[i])*sin(t1);
si[i]=dx[i]/sqrt(dx[i]*dx[i]+dy[i]*dy[i]);
co[i]=-dy[i]/sqrt(dx[i]*dx[i]+dy[i]*dy[i]);
xx[i]=x[i]-rt*co[i];
yy[i]=-(y[i]-rt*si[i]);
v[i]=4*h*w*t1/((5*p/18)*(5*p/18));
a[i]=4*h*w*w/((5*p/18)*(5*p/18));
t1=t1+1.0/36.0*p;
for(i=6;
11;
{s[i]=h-2*h*(5*p/18-t1)*(5*p/18-t1)/((5*p/18)*(5*p/18));
dx[i]=(4*h*(5*p/18-t1)/((5*p/18)*(5*p/18)))*sin(t1)+(r0+s[i])*cos(t1);
dy[i]=(4*h*(5*p/18-t1)/((5*p/18)*(5*p/18)))*cos(t1)-(r0+s[i])*sin(t1);
v[i]=4*h*w*(5*p/18-t1)/((5*p/18)*(5*p/18));
a[i]=-4*h*w*w/((5*p/18)*(5*p/18));
for(i=11;
13;
{s[i]=h;
dx[i]=(r0+s[i])*cos(t1);
dy[i]=-(r0+s[i])*sin(t1);
v[i]=0;
a[i]=0;
for(i=13;
18;
{s[i]=h-2*h*(t1-p/3)*(t1-p/3)/((5*p/18)*(5*p/18));
dx[i]=(-4*h*(t1-p/3)/((5*p/18)*(5*p/18)))*sin(+t1)+(r0+s[i])*cos(t1);
dy[i]=(-4*h*(t1-p/3)/((5*p/18)*(5*p/18)))*cos(t1)-(r0+s[i])*sin(t1);
v[i]=-4*h*w*(t1-p/3)/((5*p/18)*(5*p/18));
for(i=18;
23;
{s[i]=2*h*(5*p/18-t1+p/3)*(5*p/18-t1+p/3)/((5*p/18)*(5*p/18));
dx[i]=(-4*h*(11*p/18-t1)/((5*p/18)*(5*p/18)))*sin(t1)+(r0+s[i])*cos(t1);
dy[i]=(-4*h*(11*p/18-t1)/((5*p/18)*(5*p/18)))*cos(t1)-(r0+s[i])*sin(t1);
v[i]=-4*h*w*(5*p/18-t1+p/3)/((5*p/18)*(5*p/18));
for(i=23;
73;
s[i]=0.0;
j=0;
printf("
s(mm)v(s/m)a(s/m/m)"
32;
if(j%16==0)
{printf("
\n"
getch();
s[%d]=%4.2fv[%d]=%5.2fa[%d]=%5.2f\n"
i,s[i],i,v[i],i,a[i]);
j++;
clearviewport();
72;
{line(100+i*5,150-s[i]*6,100+(i+1)*5,150-s[i+1]*6);
line(100+i*5,250-v[i]*2,100+(i+1)*5,250-v[i+1]*2);
5;
line(100+i*5,420-a[i],100+(i+1)*5,420-a[i+1]);
line(125,420-a[5],125,420-a[6]);
line(125,420-a[6],130,420-a[6]);
10;
line(100+(i)*5,420-a[i],100+(i+1)*5,420-a[i+1]);
line(150,420-a[10],150,420);
line(150,420,165,420-a[12]);
line(165,420,165,420-a[13]);
line(165,420-a[13],170,420-a[14]);
17;
line(185,420-a[17],185,420-a[18]);
line(185,420-a[18],190,420-a[18]);
22;
line(210,420-a[22],210,420);
line(210,420,215,420);
line(90,150,400,150);
line(90,250,400,250);
line(90,420,400,420);
line(100,10,100,450);
delay(30000);
plot(s,x,y,xx,yy);
closegraph();
五、总结
通过这一个星期的课程设计,我对所要完成的任务有了比较深刻的认识,也进一步加深和巩固了所学的相关知识。
我的任务是柴油机凸轮机构的设计,因此我首先把与凸轮机构相关的内容复习了一遍,把设计的整个流程先大致搞清楚。
课程设计要讲有关的内容都要看了,我先把有关要求与问题弄明白,然后再构思设计思想,建立数学模型。
在建立数学模型时,由于公式计算较复杂,因此大量借助了计算机来完成运算;
我觉得对于对心直动滚子推杆来说,建立极坐标系更容易找出实际廓线的方程式并求解。
对于滚子半径的选择与确定,我也产生了一些疑惑,不过最终还是明白了具体的方法。
以上工作完成之后,就是编程了,编程要用到C语言,由于c语言课程没有涉及画图部分,并且软件工作环境受限,因此向学长请教了一番。
自己也通过网络查找了相关资料。
在这次课程设计中,我认识到自己知识储备仍然太少,遇到好多实际问题,而且将知识与实践结合的能力还有待提高。
总之,发现的问题有很多,通过解决这些问题我的知识与能力都得到了提高。
六、参考文献
1、《C语言程序设计》
2、《机械原理》主编:
陈作模葛文杰
略。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单缸四 冲程 柴油机 凸轮 机构 设计 教学 资料
![提示](https://static.bingdoc.com/images/bang_tan.gif)