大齿轮form1程序清单.docx
《大齿轮form1程序清单.docx》由会员分享,可在线阅读,更多相关《大齿轮form1程序清单.docx(38页珍藏版)》请在冰豆网上搜索。
大齿轮form1程序清单
大齿轮form1程序清单
OptionExplicit
Dimmy_yh_dataAsyh_data'优化后的数据存放数组
PrivateSubcmd_para_Click()
Form1.txt_fd.Enabled=True
Form1.txt_gg.Enabled=True
Form1.txt_gm1.Enabled=True
Form1.txt_gm2.Enabled=True
Form1.txt_gm3.Enabled=True
Form1.txt_gm4.Enabled=True
Form1.txt_hb1.Enabled=True
Form1.txt_hb2.Enabled=True
Form1.txt_hb3.Enabled=True
Form1.txt_hb4.Enabled=True
Form1.txt_ka.Enabled=True
Form1.txt_kt.Enabled=True
Form1.txt_ly.Enabled=True
Form1.txt_mh1.Enabled=True
Form1.txt_mh2.Enabled=True
Form1.txt_mh3.Enabled=True
Form1.txt_mh4.Enabled=True
Form1.txt_n1.Enabled=True
Form1.txt_np.Enabled=True
Form1.txt_p.Enabled=True
Form1.txt_rc1.Enabled=True
Form1.txt_rc2.Enabled=True
Form1.txt_rc3.Enabled=True
Form1.txt_rc4.Enabled=True
Form1.txt_st.Enabled=True
Form1.txt_uu.Enabled=True
Form1.txt_wn.Enabled=True
Form1.opt_hb.Enabled=True
Form1.opt_rc.Enabled=True
Form1.opt_ds_y
(1).Enabled=True
Form1.opt_ds_n
(1).Enabled=True
Form1.cmd_tran.Enabled=True
Form1.cmd_para.Enabled=False
EndSub
PrivateSubcmd_tran_Click()
my_gear_data.p=CDbl(Val(txt_p.Text))
my_gear_data.n1=CDbl(Val(txt_n1.Text))
my_gear_data.uu=CDbl(Val(txt_uu.Text))
my_gear_data.st=CDbl(Val(txt_st.Text))
my_gear_data.gg=CInt(Val(txt_gg.Text))
my_gear_data.fd=CDbl(Val(txt_fd.Text))
my_gear_data.np=CDbl(Val(txt_np.Text))
my_gear_data.kt=CDbl(Val(txt_kt.Text))
my_gear_data.ka=CDbl(Val(txt_ka.Text))
my_gear_data.ly=CDbl(Val(txt_ly.Text))
my_gear_data.wn=CDbl(Val(txt_wn.Text))
my_gear_data.gm
(1)=CInt(Val(txt_gm1.Text))
my_gear_data.gm
(2)=CInt(Val(txt_gm2.Text))
my_gear_data.gm(3)=CInt(Val(txt_gm3.Text))
my_gear_data.gm(4)=CInt(Val(txt_gm4.Text))
my_gear_data.mh
(1)=CInt(Val(txt_mh1.Text))
my_gear_data.mh
(2)=CInt(Val(txt_mh2.Text))
my_gear_data.mh(3)=CInt(Val(txt_mh3.Text))
my_gear_data.mh(4)=CInt(Val(txt_mh4.Text))
'---------------------------------------------------
'三组原始数据
my_gear_data.uu=11.86
my_gear_data.kt=1.3
my_gear_data.ka=1
my_gear_data.p=2.329
my_gear_data.n1=720
my_gear_data.fd=1
my_gear_data.gg=8
my_gear_data.gm
(1)=1
my_gear_data.gm
(2)=1
my_gear_data.gm(3)=1
my_gear_data.gm(4)=1
my_gear_data.ly=5
my_gear_data.wn=2
my_gear_data.np=0.97
my_gear_data.mh
(1)=2
my_gear_data.mh
(2)=1
my_gear_data.mh(3)=2
my_gear_data.mh(4)=1
my_gear_data.hb
(1)=240
my_gear_data.hb
(2)=240
my_gear_data.hb(3)=240
my_gear_data.hb(4)=200
my_gear_data.rc
(1)=52
my_gear_data.rc
(2)=52
my_gear_data.rc(3)=52
my_gear_data.rc(4)=52
my_gear_data.ds=True
'----------------------------------------------------
Ifopt_ds_y
(1)=TrueThen
my_gear_data.ds=True
EndIf
Ifopt_ds_n
(1)=TrueThen
my_gear_data.ds=False
EndIf
Ifopt_hb=TrueThen
my_gear_data.hb
(1)=CInt(Val(txt_hb1.Text))
my_gear_data.hb
(2)=CInt(Val(txt_hb2.Text))
my_gear_data.hb(3)=CInt(Val(txt_hb3.Text))
my_gear_data.hb(4)=CInt(Val(txt_hb4.Text))
EndIf
Ifopt_rc=TrueThen
my_gear_data.rc
(1)=CInt(Val(txt_rc1.Text))
my_gear_data.rc
(2)=CInt(Val(txt_rc2.Text))
my_gear_data.rc(3)=CInt(Val(txt_rc3.Text))
my_gear_data.rc(4)=CInt(Val(txt_rc4.Text))
EndIf
Form1.txt_fd.Enabled=False
Form1.txt_gg.Enabled=False
Form1.txt_gm1.Enabled=False
Form1.txt_gm2.Enabled=False
Form1.txt_gm3.Enabled=False
Form1.txt_gm4.Enabled=False
Form1.txt_hb1.Enabled=False
Form1.txt_hb2.Enabled=False
Form1.txt_hb3.Enabled=False
Form1.txt_hb4.Enabled=False
Form1.txt_ka.Enabled=False
Form1.txt_kt.Enabled=False
Form1.txt_ly.Enabled=False
Form1.txt_mh1.Enabled=False
Form1.txt_mh2.Enabled=False
Form1.txt_mh3.Enabled=False
Form1.txt_mh4.Enabled=False
Form1.txt_n1.Enabled=False
Form1.txt_np.Enabled=False
Form1.txt_p.Enabled=False
Form1.txt_rc1.Enabled=False
Form1.txt_rc2.Enabled=False
Form1.txt_rc3.Enabled=False
Form1.txt_rc4.Enabled=False
Form1.txt_st.Enabled=False
Form1.txt_uu.Enabled=False
Form1.txt_wn.Enabled=False
Form1.opt_hb.Enabled=False
Form1.opt_rc.Enabled=False
Form1.opt_ds_y
(1).Enabled=False
Form1.opt_ds_n
(1).Enabled=False
Form1.fhx.Enabled=True
Form1.cmd_tran.Enabled=False
EndSub
PrivateSubexit_Click()
End
EndSub
'初始化
PrivateSubForm_Load()
Form1.txt_fd.Enabled=False
Form1.txt_gg.Enabled=False
Form1.txt_gm1.Enabled=False
Form1.txt_gm2.Enabled=False
Form1.txt_gm3.Enabled=False
Form1.txt_gm4.Enabled=False
Form1.txt_hb1.Enabled=False
Form1.txt_hb2.Enabled=False
Form1.txt_hb3.Enabled=False
Form1.txt_hb4.Enabled=False
Form1.txt_ka.Enabled=False
Form1.txt_kt.Enabled=False
Form1.txt_ly.Enabled=False
Form1.txt_mh1.Enabled=False
Form1.txt_mh2.Enabled=False
Form1.txt_mh3.Enabled=False
Form1.txt_mh4.Enabled=False
Form1.txt_n1.Enabled=False
Form1.txt_np.Enabled=False
Form1.txt_p.Enabled=False
Form1.txt_rc1.Enabled=False
Form1.txt_rc2.Enabled=False
Form1.txt_rc3.Enabled=False
Form1.txt_rc4.Enabled=False
Form1.txt_st.Enabled=False
Form1.txt_uu.Enabled=False
Form1.txt_wn.Enabled=False
Form1.opt_hb.Enabled=False
Form1.opt_rc.Enabled=False
Form1.opt_ds_y
(1).Enabled=False
Form1.opt_ds_n
(1).Enabled=False
Form1.cmd_tran.Enabled=False
Form1.fhx.Enabled=False
Form1.make_scr.Enabled=False
'--------------------------------------------------------------------
txt_hb1.Visible=True
txt_hb2.Visible=True
txt_hb3.Visible=True
txt_hb4.Visible=True
lab_hb1.Visible=True
lab_hb2.Visible=True
lab_hb3.Visible=True
lab_hb4.Visible=True
txt_rc1.Visible=False
txt_rc2.Visible=False
txt_rc3.Visible=False
txt_rc4.Visible=False
lab_rc1.Visible=False
lab_rc2.Visible=False
lab_rc3.Visible=False
lab_rc4.Visible=False
Form2.Visible=False
EndSub
PrivateSubopt_hb_Click()
txt_hb1.Visible=True
txt_hb2.Visible=True
txt_hb3.Visible=True
txt_hb4.Visible=True
lab_hb1.Visible=True
lab_hb2.Visible=True
lab_hb3.Visible=True
lab_hb4.Visible=True
txt_rc1.Visible=False
txt_rc2.Visible=False
txt_rc3.Visible=False
txt_rc4.Visible=False
lab_rc1.Visible=False
lab_rc2.Visible=False
lab_rc3.Visible=False
lab_rc4.Visible=False
EndSub
PrivateSubopt_rc_Click()
txt_hb1.Visible=False
txt_hb2.Visible=False
txt_hb3.Visible=False
txt_hb4.Visible=False
lab_hb1.Visible=False
lab_hb2.Visible=False
lab_hb3.Visible=False
lab_hb4.Visible=False
txt_rc1.Visible=True
txt_rc2.Visible=True
txt_rc3.Visible=True
txt_rc4.Visible=True
lab_rc1.Visible=True
lab_rc2.Visible=True
lab_rc3.Visible=True
lab_rc4.Visible=True
EndSub
'复合形法优化
PrivateSubfhx_Click()
Dima1AsSingle,a2AsSingle'临时变量
DimxAsSingle'临时变量
Dimbt1AsSingle,bt2AsSingle
Dimha1AsSingle,ha3AsSingle
Dimhf1AsSingle,hf3AsSingle
Dimh1AsSingle,h3AsSingle
'-------------------------------------------------------
Callfhx_optimum
'-------------------------------------------------------
'-----------计算齿轮的基本尺寸数据----------------------
my_yh_data.mn1=xp(2*n+1,1)'6个优化后的数据
my_yh_data.z1=xp(2*n+1,2)
my_yh_data.mn2=xp(2*n+1,3)
my_yh_data.z3=xp(2*n+1,4)
my_yh_data.u1=xp(2*n+1,5)
my_yh_data.bt=xp(2*n+1,6)
'-------------------------------------------------------
'模数圆整'添加代码
m1=jh_module(my_yh_data.mn1)
Ifm1<1.5Thenm1=1.5
m2=jh_module(my_yh_data.mn2)
Ifm2<1.5Thenm2=1.5
'-------------------------------------------------------
my_yh_data.z1=Int(my_yh_data.z1)'进一步数据处理
my_yh_data.z3=Int(my_yh_data.z3)
my_yh_data.u1=Int(my_yh_data.u1*10+0.5)/10
my_yh_data.u2=Int(my_gear_data.uu/my_yh_data.u1*10+0.5)/10
my_yh_data.z2=Int(my_yh_data.z1*my_yh_data.u1)
my_yh_data.z4=Int(my_yh_data.z3*my_yh_data.u2)
'-------------------------------------------------------
'添加代码
a1=Int((my_yh_data.z1+my_yh_data.z2)*m1/(2*Cos(my_yh_data.bt)))
a2=Int((my_yh_data.z3+my_yh_data.z4)*m2/(2*Cos(my_yh_data.bt)))
x=(my_yh_data.z1+my_yh_data.z2)*m1/(2*a1)
bt1=1.5707633-Atn(x/Sqr(1-x*x))
x=(my_yh_data.z3+my_yh_data.z4)*m2/(2*a2)
bt2=1.5707633-Atn(x/Sqr(1-x*x))
'分度圆直径
d1=my_yh_data.z1*m1/Cos(bt1)
d2=my_yh_data.z2*m1/Cos(bt1)
d3=my_yh_data.z3*m2/Cos(bt2)
d4=my_yh_data.z4*m2/Cos(bt2)
'齿宽
b2=Int(my_gear_data.fd*d1+0.5)
b1=b2+5
b4=Int(my_gear_data.fd*d3+0.5)
b3=b4+5
'齿顶高齿根高齿全高
ha1=m1:
hf1=m1*1.25:
h1=ha1+hf1
ha3=m2:
hf3=m2*1.25:
h3=ha3+hf3
'齿顶圆直径
'齿根圆直径
daa
(1)=d1+2*ha1:
daa
(2)=d2+2*ha1:
daa(3)=d3+2*ha3:
daa(4)=d4+2*ha3
dff
(1)=d1-2*hf1:
dff
(2)=d2-2*hf1:
dff(3)=d3-2*hf3:
dff(4)=d4-2*hf3
Form1.fhx.Enabled=False
Form1.make_scr.Enabled=True
'在form1上显示优化结果
Print"mn1=";xp(n,1),"z1=";xp(n,2),"mn2=";xp(n,3),"z3=";xp(n,4),"u1=";xp(n,5),"bt=";xp(n,6)*(180\3.14159265357),"ha=";ha1
EndSub
'#####编写SCRFILE#####
PrivateSubmake_scr_Click()
'定义局部变量---------------------------------------------------------------------------
DimxAsSingle,yAsSingle
DimdxAsSingle,dyAsSingle
Dimxx(120)AsSingle,yy(120)AsSingle'坐标点数据数组
Dimstr_x(120)AsString,str_y(120)AsString'坐标点数据字符数组
Dimll(6)AsSingle,bb(6)AsSingle,cc(6)AsSingle,aa(6)AsSingle,lt(6)AsSingle'图幅数据变量
DimdlAsSingle,dbAsSingle
DimlcAsSingle,bcAsSingle
Dimstr_lcAsString,str_bcAsString,str_ltAsString
DimdaAsSingle,dAsSingle,dfAsSingle,bAsSingle,zAsSingle,mAsSingle
DimiAsInteger,jAsInteger'循环变量
Dimstr_lAsString,str_bAsString,str_cAsString,str_aAsS