机械原理课程设计程序源
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
机械原理课程设计
已知条件:
各杆尺寸: l1=0.063m l2=0.333m
曲柄组件质量:m1=40.0kg质心近似在B点,转动惯量忽略,曲柄转速140r/min.
连杆组件质量:m2=26.0kg质心在BC连线上距离B点0.111m处,绕质心转动惯量
J2=0.25kg·m2;
活塞组件质量:m3=15.6kg,质心在C点;活塞在吸气冲程受力忽略为零,在压缩冲程受力4500N;
编程任务:
运动分析:每隔10°,求出各位置时连杆2的角位置、角速度、角加速度,活塞3的位移、速度、加速度
动力分析:每隔10°,求出各位置时曲柄上平衡力矩和各运动副反力的大小和方向选曲柄为等效构件,并设等效驱动力矩为常数,许用运动不均匀系数[δ]=0.02,求安装在曲柄轴上飞轮的转动惯量。
程序编写:
#include
#include
void main()
{FILE *fp;
int i,j,k,p;
double w1,PIB,g1,g2,g3,an;
double
l1=0.063,l2=0.333,l3=0.111,m1=40.0,m2=26.0,m3=15.6,pi=3.1415926,g=9.8,j2=0.25; double xr1[37],xr2[37],Sc[37],w2[37],vc[37],ac[37],af2[37];/*运动分析变量*/ double
a2x[37],a2y[37],a2[37],pi2x[37],pi2y[37],Mi2[37],pi3[37],pi1x[37],pi1y[37],Mr[3 7],Mb[37];/*动力分析变量*/
double
r43[37],r12x[37],r12y[37],r12[37],r23x[37],r23y[37],r23[37],r41x[37],r41y[37],r 41[37];
double a12[37],b12[37],a23[37],b23[37],a41[37],b41[37];
double Wr[37],Wd[37],Wdt[37],Med,Wmax,Wmin,Emax,Jf;/*飞轮设计变量*/
w1=pi*140/30;
an=-w1*w1*l1;
PIB=-m1*an;/*求惯性力*/
g1=m1*g;g2=m2*g;g3=m3*g;
if ((fp=fopen("d:\\机械原理课程设计.txt","w"))==NULL)
{printf ("error.\n");}
for(i=0;i<37;i++)
{ /*运动分析*/
xr1[i]=pi*i/18;
xr2[i]=asin(-l1*sin(xr1[i])/l2);
Sc[i]=l1*cos(xr1[i])+l2*cos(xr2[i]);
w2[i]=(-l1*cos(xr1[i])*w1)/(l2*cos(xr2[i]));
vc[i]=-l1*sin(xr1[i])*w1-l2*sin(xr2[i])*w2[i];
af2[i]=(l1*sin(xr1[i])*pow(w1,2)+l2*sin(xr2[i])*pow(w2[i],2))
/(l2*cos(xr2[i]));/*阿尔法2*/
ac[i]=-l1*cos(xr1[i])*pow(w1,2)-l2*cos(xr2[i])*pow(w2[i],2)-l2*sin(xr2[i])* af2[i];
/*动力分析*/
if(xr1[i]>=0&&xr1[i]<=pi) p=0;/*吸入冲程为0*/
else p=4500;/*压缩冲程为4500*/
a2x[i]=w1*w1*l1*cos(xr1[i]+pi)+l3*(ac[i]-w1*w1*l1*cos(xr1[i]+pi))/l2;
a2y[i]=w1*w1*l1*sin(xr1[i]+pi)+l3*(-w1*w1*l1*sin(xr1[i]+pi))/l2;
a2[i]=sqrt(a2x[i]*a2x[i]+a2y[i]*a2y[i]);
pi2x[i]=-m2*a2x[i];
pi2y[i]=-m2*a2y[i];
Mi2[i]=-j2*af2[i];
pi3[i]=-m3*ac[i];
pi1x[i]=PIB*cos(xr1[i]);
pi1y[i]=PIB*sin(xr1[i]);
r43[i]=((-p+pi3[i])*l2*sin(xr2[i])+pi2x[i]*l3*sin(xr2[i])-(pi2y[i]-g2)*l3*c os(xr2[i])-Mi2[i])/(l2*cos(xr2[i]))+g3;/*R43的大小*/
r12x[i]=p-pi3[i]-pi2x[i];/*R12的大小及方向*/
r12y[i]=g2+g3-pi2y[i]-r43[i];
r12[i]=sqrt(r12x[i]*r12x[i]+r12y[i]*r12y[i]);
{if(r12x[i]>=0&&r12y[i]>=0) a12[i]=atan(r12y[i]/r12x[i]);
if(r12x[i]<=0) a12[i]=atan(r12y[i]/r12x[i])+pi;
if(r12x[i]>=0&&r12y[i]<=0) a12[i]=atan(r12y[i]/r12x[i])+2*pi;
}b12[i]=a12[i]*180/pi;
r23x[i]=p-pi3[i];r23y[i]=g3-r43[i];r23[i]=sqrt(r23x[i]*r23x[i]+r23y[i]*r23y [i]);/*R23的大小及方向*/
{if(r23x[i]>=0&&r23y[i]>=0) a23[i]=atan(r23y[i]/r23x[i]);
if(r23x[i]<=0) a23[i]=atan(r23y[i]/r23x[i])+pi;
if(r23x[i]>=0&&r23y[i]<=0) a23[i]=atan(r23y[i]/r23x[i])+2*pi;
}b23[i]=a23[i]*180/pi;
r41x[i]=-pi1x[i]+r12x[i];r41y[i]=g1-pi1y[i]+r12y[i];r41[i]=sqrt(r41x[i]*r41x[i] +r41y[i]*r41y[i]);/*R41的大小及方向*/
{if(r41x[i]>=0&&r41y[i]>=0) a41[i]=atan(r41y[i]/r41x[i]);
if(r41x[i]<=0) a41[i]=atan(r41y[i]/r41x[i])+pi;
if(r41x[i]>=0&&r41y[i]<=0) a41[i]=atan(r41y[i]/r41x[i])+2*pi;
}b41[i]=a41[i]*180/pi;
Mb[i]=(pi1x[i]-r12x[i])*l1*sin(xr1[i])-(pi1y[i]-r12y[i]-g1)*l1*cos(xr1[i]); /*单个曲柄滑块机构的平衡力矩*/
}