哈工大机械设计电算程序Vb.docx

上传人:b****8 文档编号:9719998 上传时间:2023-02-06 格式:DOCX 页数:18 大小:18.96KB
下载 相关 举报
哈工大机械设计电算程序Vb.docx_第1页
第1页 / 共18页
哈工大机械设计电算程序Vb.docx_第2页
第2页 / 共18页
哈工大机械设计电算程序Vb.docx_第3页
第3页 / 共18页
哈工大机械设计电算程序Vb.docx_第4页
第4页 / 共18页
哈工大机械设计电算程序Vb.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

哈工大机械设计电算程序Vb.docx

《哈工大机械设计电算程序Vb.docx》由会员分享,可在线阅读,更多相关《哈工大机械设计电算程序Vb.docx(18页珍藏版)》请在冰豆网上搜索。

哈工大机械设计电算程序Vb.docx

哈工大机械设计电算程序Vb

DimaAsDouble

DimtAsString

Dima1AsInteger

Dima2AsInteger

DimklAsDouble

DimkbAsDouble

DimKiAsDouble

DimkaoAsDouble

DimmAsDouble

DimfAsDouble

DimeAsDouble

Dimpnum()AsVariant

Dimnum()AsVariant

DimkkaAsVariant

Dimlld()AsVariant

Dimkkl()AsVariant

DimvmaxAsDouble

PrivateSubCommand1_Click()'计算相关参数

fchu=Round((500*Val(pd)*(2.5-kao)/Val(z)/Val(v)/kao+m*Val(v)^2),2)

fq=Round((2*Val(z)*Val(fchu)*Sin(Val(bao)*3.1416/360)),2)

bmm=(Val(z)-1)*e+2*f

fchu.Text=fchu:

fq.Text=fq:

bmm.Text=bmm

EndSub

PrivateSubCommand2_Click()'确定载荷情况系数

DimKA1AsDouble

IfVal(n)<100Then

CallMsgBox("转速过小!

",48,"警告"):

n.Text="":

n.SetFocus

ElseIfVal(n)>6000Then

CallMsgBox("转速过大!

",48,"警告"):

n.Text="":

n.SetFocus

Else:

zaihe.Enabled=True

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷平稳"AndWorkHour.Text="<10h/天"ThenKA1=1

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷平稳"AndWorkHour.Text="10~16h/天"ThenKA1=1.1

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷平稳"AndWorkHour.Text=">16h/天"ThenKA1=1.2

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷变动小"AndWorkHour.Text="<10h/天"ThenKA1=1.1

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷变动小"AndWorkHour.Text="10~16h/天"ThenKA1=1.2

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷变动小"AndWorkHour.Text=">16h/天"ThenKA1=1.3

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷变动较大"AndWorkHour.Text="<10h/天"ThenKA1=1.2

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷变动较大"AndWorkHour.Text="10~16h/天"ThenKA1=1.3

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷变动较大"AndWorkHour.Text=">16h/天"ThenKA1=1.4

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷变动很大"AndWorkHour.Text="<10h/天"ThenKA1=1.3

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷变动很大"AndWorkHour.Text="10~16h/天"ThenKA1=1.4

Ifdianjileixing.Text="I类"Andzaihe.Text="载荷变动很大"AndWorkHour.Text=">16h/天"ThenKA1=1.5

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷平稳"AndWorkHour.Text="<10h/天"ThenKA1=1.1

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷平稳"AndWorkHour.Text="10~16h/天"ThenKA1=1.2

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷平稳"AndWorkHour.Text=">16h/天"ThenKA1=1.3

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷变动小"AndWorkHour.Text="<10h/天"ThenKA1=1.2

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷变动小"AndWorkHour.Text="10~16h/天"ThenKA1=1.3

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷变动小"AndWorkHour.Text=">16h/天"ThenKA1=1.4

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷变动较大"AndWorkHour.Text="<10h/天"ThenKA1=1.4

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷变动较大"AndWorkHour.Text="10~16h/天"ThenKA1=1.5

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷变动较大"AndWorkHour.Text=">16h/天"ThenKA1=1.6

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷变动很大"AndWorkHour.Text="<10h/天"ThenKA1=1.5

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷变动很大"AndWorkHour.Text="10~16h/天"ThenKA1=1.6

Ifdianjileixing.Text="II类"Andzaihe.Text="载荷变动很大"AndWorkHour.Text=">16h/天"ThenKA1=1.8

IfCheck1.Value=0ThenKA=KA1

IfCheck1.Value=1ThenKA=KA1*1.1

DimppAsDouble

pp=Val(p)*Val(KA)

Ifpp>250Orpp<0.8ThenCallMsgBox("对不起,此设计任务本软件无法实现,计算出的设计功率无对应带型能选择!

",48,"警告"):

Command3.Enabled=False

Ifpp<=250Andpp>=0.8Thenpd=Int(pp*100+0.5)/100:

Command3.Enabled=True

EndIf

p.Text=p

n.Text=n

i.Text=i

KA.Text=KA

EndSub

PrivateSubCommand3_Click()

Dimxx()AsVariant

Dimyy()AsVariant

daixingtu.Show

带型.Enabled=True

daixingtu.tu.FillStyle=0

daixingtu.tu.FillColor=RGB(255,0,0)

daixingtu.tu.Scale(0,7200)-(10000,0)

DimiAsInteger

Fori=1To24

daixingtu.tu.Line(400*i,0)-(400*i,7200),RGB(255,0,255)

Nexti

Fori=1To19

daixingtu.tu.Line(0,400*i)-(10000,400*i),RGB(255,0,255)

Nexti

daixingtu.tu.PSet(100,7100)

daixingtu.tu.Print"n(r/min)"

daixingtu.tu.PSet(800,6400)

daixingtu.tu.Print"Y:

20--40"

daixingtu.tu.Line(0,3150)-(2600,6200),RGB(255,0,0)

daixingtu.tu.Line(2600,6200)-(2750,6800),RGB(255,0,0)

daixingtu.tu.Print"Z:

50--71"

daixingtu.tu.Line(0,2250)-(3200,5900),RGB(255,0,0)

daixingtu.tu.Line(3200,5900)-(3350,6600),RGB(255,0,0)

daixingtu.tu.Print"80--100"

daixingtu.tu.Line(0,800)-(4000,5200),RGB(255,0,0)

daixingtu.tu.Line(4000,5200)-(4150,6200),RGB(255,0,0)

daixingtu.tu.Print"A:

70--100"

daixingtu.tu.Line(400,0)-(4400,4400),RGB(255,0,0)

daixingtu.tu.Line(4400,4400)-(4600,5600),RGB(255,0,0)

daixingtu.tu.Print"112--140"

daixingtu.tu.Line(1450,0)-(5200,4400),RGB(255,0,0)

daixingtu.tu.Print"B:

125--140"

daixingtu.tu.Line(2300,0)-(5600,3800),RGB(255,0,0)

daixingtu.tu.Line(5600,3800)-(5750,4800),RGB(255,0,0)

daixingtu.tu.Print"160--200"

daixingtu.tu.Line(4150,0)-(6800,3200),RGB(255,0,0)

daixingtu.tu.Line(6800,3200)-(6950,4000),RGB(255,0,0)

daixingtu.tu.Print"C:

200--315"

daixingtu.tu.Line(5850,0)-(8600,3200),RGB(255,0,0)

daixingtu.tu.Print"D:

355--400"

daixingtu.tu.Line(7200,0)-(9600,3000),RGB(255,0,0)

daixingtu.tu.PSet(8700,1900)

daixingtu.tu.Print"E:

450--500"

daixingtu.tu.PSet(9400,200)

daixingtu.tu.Print"Pd(kw)"

xx=Array(0.8,1,1.25,1.6,2,2.5,3.15,4,5,6.3,8,10,12.5,16,20,25,31.5,40,50,63,80,100,125,160,200,250)

yy=Array(100,125,160,200,250,315,400,500,630,800,1000,1250,1600,2000,2500,3150,4000,5000,6000)

DimjAsInteger

DimkAsInteger

x=Val(FormV.pd)

Forj=0To25

If(x-xx(j))*(x-xx(j+1))<=0ThenExitFor

Nextj

x=400*(j+(x-xx(j))/(xx(j+1)-xx(j)))

y=Val(FormV.n)

Fork=0To19

If(y-yy(k))*(y-yy(k+1))<=0ThenExitFor

Nextk

y=400*(k+(y-yy(k))/(yy(k+1)-yy(k)))

daixingtu.tu.Circle(Int(x),Int(y)),100,RGB(255,255,0)

EndSub

PrivateSubCommand4_Click()'(计算带速并判断)

DimV1AsDouble

V1=(Val(dd1.Text)*3.1416*Val(n.Text))/60000

IfVal(V1)>Val(vmax)Then

CallMsgBox("你所设计的小带轮带速已超出其型号规定的极限带速,请减小小带轮的直径重新设计!

",16,"错误")

Command5.Enabled=False

v.Text=""

Else

v.Enabled=True

v=Str(Int(V1*100+0.5)/100)

Command5.Enabled=True

EndIf

EndSub

PrivateSubCommand5_Click()'(选取标准大带轮直径)

Dimd2AsDouble

DimjAsInteger

d2=Val(dd1)*Val(i)

Ifd2>800Then

CallMsgBox("大带轮直径过大!

无标准值可选用!

",48,"注意")

Command6.Enabled=False

Else

Forj=0To34

If(d2-num(j))*(d2-num(j+1))<=0ThenExitFor

Nextj

If(d2-num(j))>(num(j+1)-d2)Thend2=num(j+1)

If(d2-num(j))<=(num(j+1)-d2)Thend2=num(j)

dd2=Str(d2)

dd2.Text=dd2

Command6.Enabled=True

EndIf

EndSub

PrivateSubCommand6_Click()'(中心距选择提示)

dd3=Val(dd2)

a1=Int(0.7*(dd3+Val(dd1.Text)))

a2=Int(2*(dd3+Val(dd1.Text)))

fanwei.Caption="范围:

"&a1&"至"&a2

EndSub

PrivateSubCommand7_Click()'(计算选取Ld)

IfVal(a0)a2Then

CallMsgBox("请在规定范围内选择中心距!

",48,"注意"):

Command8.Enabled=False:

a0.Text=""

Else

DimlddAsDouble

DimqAsDouble

ldd=Val(a0)*2+3.1416*(Val(dd2)+Val(dd1.Text))/2+(Val(dd2)-Val(dd1.Text))^2/(4*Val(a0))

Text1.Text=Val(ldd)

Ifldd<200Orldd>16000Then

CallMsgBox("Ld计算值超范围!

",16,"错误")

Command8.Enabled=False

EndIf

DimkAsInteger

Fork=0To38

If(ldd-lld(k))*(ldd-lld(k+1))<=0ThenExitFor

Nextk

If(ldd-lld(k))>(lld(k+1)-ldd)Then

q=lld(k+1)

k=k+1

Else:

q=lld(k)

EndIf

kl=kkl(k)'kl为长度系数

Ifkl=0ThenCallMsgBox("Ld设计过小!

无对应KL!

",16,"错误"):

Command8.Enabled=False

Ifkl=10ThenCallMsgBox("Ld设计过大!

无对应KL!

",16,"错误"):

Command8.Enabled=False

Ifkl>0Andkl<10Then

ld=Int(q*100+0.5)/100

a=Val(a0)+(q-ldd)/2

'a=Int(a*100+0.5)/100

'a=Int(a/5+0.5)*5

aa.Text=a

Command8.Enabled=True

kllll.Text=kl

EndIf

EndIf

EndSub

PrivateSubCommand8_Click()'(计算包角大小)

bao=180-(Val(dd2.Text)-Val(dd1.Text))*57.3/Val(a)

Ifbao<90Orbao>220Then

CallMsgBox("包角计算值超范围!

请从新选定相关参数!

",16,"错误")

bao.Text=""

Command9.Enabled=False

Else

bao=Int(bao*10+0.5)/10

bao.Text=Val(bao)

Command9.Enabled=True

EndIf

EndSub

PrivateSubCommand9_Click()'(计算带速)

Dimi2AsDouble

i2=Val(dd2.Text)/Val(dd1.Text)

i2=Int(i2*100+0.5)/100

Ifi2>=1Andi2<=1.01ThenKi=1

Ifi2>=1.02Andi2<=1.04ThenKi=1.0136

Ifi2>=1.05Andi2<=1.08ThenKi=1.0276

Ifi2>=1.09Andi2<=1.12ThenKi=1.0419

Ifi2>=1.13Andi2<=1.18ThenKi=1.0567

Ifi2>=1.19Andi2<=1.24ThenKi=1.0719

Ifi2>=1.25Andi2<=1.34ThenKi=1.0875

Ifi2>=1.35Andi2<=1.51ThenKi=1.1036

Ifi2>=1.52Andi2<=1.99ThenKi=1.1202

Ifi2>=2ThenKi=1.137'ki为传动比系数

bbao=Val(bao)

DimbaaAsVariant

baa=Array(90,100,110,120,130,140,150,160,170,180,190,200,210,220)

kka=Array(0.68,0.73,0.78,0.82,0.86,0.89,0.92,0.95,0.98,1,1.1,1.15,1.2)

Forj=0To13

If(bbao-baa(j))*(bbao-baa(j+1))<=0ThenExitFor

Nextj

kao=Round(kka(j)+(bbao-baa(j))*(kka(j+1)-kka(j))/10,2)'kao为包角系数

kaaaa.Text=kao

Dimnnum()AsVariant

nnum=Array(100,200,400,700,800,950,1200,1450,1600,2000,2400,2800,3200,3600,4000,4500,5000,5500,6000)

dd1=dd1.Text

Ift="Y"Anddd1="20"Thenpnum=Array(0,0,0,0,0,0.01,0.02,0.02,0.03,0.03,0.04,0.04,0.06,0.06,0.07,0.08,0.09,0.1)

Ift="Y"Anddd1="28"Thenpnum=Array(0,0,0,0,0.03,0.04,0.04,0.05,0.05,0.06,0.07,0.08,0.09,0.1,0.11,0.12,0.13,0.14,0.15)

Ift="Y"Anddd1="35.5"Thenpnum=Array(0,0,0

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 少儿英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1