教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 范文大全 > 行业范文 >

C语言实习报告-蜗杆传动的优化设计

来源:网络收集 时间:2026-01-31
导读: 蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。 C 语 言 实 习 报 告 学院 班 XXXXXX XXXXXXX XXXXX 蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。 一、设计题目:蜗杆传动的优化设计 设计一普通圆柱蜗杆,

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

C 语 言 实 习 报 告

学院 班

XXXXXX XXXXXXX XXXXX

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

一、设计题目:蜗杆传动的优化设计

设计一普通圆柱蜗杆,已知参数:输入功率P=8.8Kw;蜗杆转速n1 960r/min;传动比i 18;由电动机驱动,载荷平衡。蜗杆材料

20Cr

,表面硬度HRC 58,蜗轮材料为ZQSn10 1,离心铸造,蜗杆减

速器每日8h,全年按300个工作日计,要示工作寿命不低于10年。 根据以上条件进行优化设计,通常在满足使用要求的前提下,以结构尺寸是否紧凑、传动效率是否较高作为评判设计优劣的指标,在此以传动中心别具匠心为目标函数

a m(q z2)/2 m(q iz1)/2

式中:a——传动中心距;

m

q

——蜗杆轴向和蜗轮端面模数; ——蜗杆直径系数;

z1z2

——蜗杆头数; ——蜗轮齿数;

i——工程传动比;

二、题目分析:由上式可知传动中心别具匠心与模数、蜗杆直径系数和蜗杆头数有关。此三个参数可作为独立设计变量,即

x x1,x2,x3 m,q,z1

f(x) x1(x2 ix3)/2

T

T

,与此相对应,目标函数可写为:

在进行蜗杆传动设计时,各参数应满足强度和刚度方面的要求,应用网格法可求解这一问题。网格法是约束直接优化方法中较为简单的一种方法,它的基本思想是将可行域分为许多网格,求出满足设计

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

约束的网格点上的目标函数值,比较它们的大小,从中选择函数值最小的网格点。依次循环,直到网格之间的距离达到控制精度,即可得满足精度要求的近似最优解。

三、算法步骤:网格法的算法步骤为:

(1)给定目标函数初值(一个足够大的正数)、对应各设计变量xi(i 1,2, n)的等分数和计算精度 。

(2)将区间 ai,bi 进行mi等分,间距为

xi

(ti)

f

*

hi

bi aimi

,各分点坐标为

n

ai tihi

,式中:

ti 1,2, mi,i 1,2, n

,共有T个分点:

T

(m

i 1

i

1)

(3)对T个分点按顺序逐一进行可行性检查,放弃那些不满足设计约束gu(x) 0(u 1,2, ,m)的网格点,计算满足设计约束的网格点所对应的目标函数值

f(x

(k)

f(x)

(k)

)

,并与目标函数初值

f

*

比较,若

) f

*

,则f

*

f(x

(k)

。否则,判别下一个网格点。

则停止计算,

x,f

*

*

(4)如果

max hi,i 1,2, ,n

即为所求的最

优点和最优值。否则取

ai xi hi

*

bi

*

x i

h

i

(i 1 ,2n,

转向步骤(2)继续计算。 四、流程图

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

五、程序

#include"stdio.h" /*预处理命令*/ #include"stdlib.h"

#include"math.h" /*主函数*/ main() {

double fun(double x[3]); int yesorno(int ng, double x[3]); double x[3];

double a[3]={2.0,7.0,2.0}; /*定义网格区间上限*/ double b[3]={8.0,25.0,3.0}; /*定义网格区间下限*/ int n=3;

int m[3]={12,24,10}; /*定义网格区间的等分值*/ double eps=0.1; double x0[3]={0.2,0.3}; double xmin[3],fmin; double f0=10.0e5,f; double h[3]; double hmax; int i; int i0,i1,i2;

int ng=10; /*参数约束条件个数*/

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

do {

for(i=0;i<n;i++)

h[i]=(b[i]-a[i])/m[i]; /*将区间[ai,bi]进行mi等分*/ for(i2=0;i2<=m[2];i2++) /*网格法划分区间*/ {

x[2]=a[2]+i2*h[2]; for (i1=0;i1<=m[1];i1++) {

x[1]=a[1]+i1*h[1]; for(i0=0;i0<=m[0];i0++) {

x[0]=a[0]+i0*h[0];

if(yesorno(ng,x)==0) /*判断刚度与强度约束判断*/ continue; f=fun(x); if(f>=f0) continue; for(i=0;i<n;i++) {x0[i]=x[i];xmin[i]=x[i];} f0=f; fmin=f; }}}

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

hmax=0.0; /*网格精度细化*/ for(i=0;i<n;i++)

if(h[i]>hmax) hmax=h[i]; /*求最大间距hmax*/ if(hmax>eps) {

for(i=0;i<n;i++) {

a[i]=xmin[i]-h[i]; b[i]=xmin[i]+h[i]; } f0=10.0e4; } }

while(hmax>eps); printf("the results:\n"); for(i=0;i<n;i++)

printf("x**=%10.5e\n",xmin[i]); printf("f0=%10.5e\n",fmin); printf("hmax=%10.5e\n",hmax); return(0); }

int yesorno(int ng, double x[3])

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

{

int i,yesorno=1; double zp,z1,z2,z3,z4,z5; double gx[20]; gx[0]=-x[0]+2.0;

gx[1]=-8.0+x[0]; /*网格区间三维坐标的约束条件*/

gx[2]=-25.0+x[1]; /*蜗杆轴向和蜗杆端面模数m的范围:

2.0<=m<=8。0*/

gx[3]=-x[1]+7.0; /*蜗杆直径系数q的范围:7.0<=q<=25.0*/ gx[4]=-x[2]+2.0;

gx[5]=-3.0+x[2]; /*蜗杆头数z1的范围:2.0<=z1<=3.0*/

gx[6]=-atan(x[2]/x[1])+10.0/180;

gx[7]=-20.0/180.0+atan(x[2]/x[1]); /*蜗杆导程角计算约束*/ z1=-0.8881*2.0*x[1]/(x[1]+18.0*x[2]); zp=4.02*exp(z1); z2=x[0]*(x[1]+18.0*x[2]); z3=pow(z2,3.0); z4=0.125*z3;

gx[8]=252.0-170100.0*zp/sqrt(z4); /*蜗杆接触强度校合计算*/ z5=x[1]+1.0;

gx[9]=146.0-745000.0/(pow(x[0],3.0)*x[2]*(0.5+sqrt(z5))); /*蜗杆弯曲强度校合*/

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

for(i=0;i<ng;i++) if(gx[i]>0.0) { yesorno=0; break; }

printf("yesorno=%d",yesorno); return( yesorno); }

double fun(double x[20]) { double f;

f=0.5*x[0]*(x[1]+18*x[2]); return(f); }

六、实习心得:

为期两周的计算机强化训练即将结束了,在这两个星期的实习当中我感受颇多。

从一开始对C语言的一无所知到逐渐初步掌握了一些C语言的语法知识以及操作方法,这个学习的过程让我觉得很充实,很有意义。 C语言作为国际上广泛流行的通用程序设计语言,在计算机的研究和应用中已展现出强大的生命力。C语言兼顾了诸多高级语言的特点,

蜗杆传动的优化设计的C语言编程方案,仅供参考。个人辛苦完成,切勿盗用。

是一种典型的结构化程序设 …… 此处隐藏:2078字,全部文档内容请下载后查看。喜欢就下载吧 ……

C语言实习报告-蜗杆传动的优化设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/fanwen/981201.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)