⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmbelt.frm

📁 齿轮传动设计计算的开发软件
💻 FRM
📖 第 1 页 / 共 2 页
字号:
      TabIndex        =   30
      Top             =   1170
      Width           =   1575
   End
   Begin VB.Label Label12 
      Caption         =   "带轮轴材料:"
      Height          =   210
      Left            =   3705
      TabIndex        =   28
      Top             =   390
      Width           =   1380
   End
   Begin VB.Label Label2 
      Caption         =   "请输入主动轮的转速(n/min):"
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   600
      Left            =   195
      TabIndex        =   2
      Top             =   1170
      Width           =   1965
   End
   Begin VB.Label label1 
      Caption         =   "请输入功率(Kw) :"
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   210
      Left            =   195
      TabIndex        =   0
      Top             =   390
      Width           =   1695
   End
End
Attribute VB_Name = "Frmbelt"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Option Base 1
Private worktime(1 To 7) As String
Private workcondition(1 To 5) As String
Private kabelt(1 To 5, 1 To 10) As Single
Public sworktime As String
Public sworkcondition As String

Private Sub beltKA(sworktime, sworkcondition, ka, startcondition)
Dim i As Integer
Dim j As Integer
Open App.Path + "\B10-10.dat" For Input As #1 '工况数据

For i = 1 To 4
Input #1, workcondition(i)
Next i
For i = 1 To 3
Input #1, worktime(i)
Next i
For i = 1 To 4
For j = 1 To 3
Input #1, kabelt(i, j)
Next j
Next i
For i = 1 To 4
For j = 4 To 6
Input #1, kabelt(i, j)
Next j
Next i
Close
For i = 1 To 4
If sworkcondition = workcondition(i) Then Exit For
Next i
For j = 1 To 3
If sworktime = worktime(j) Then Exit For
Next j
If startcondition = "轻、空载启动" Then
ka = kabelt(i, j)
End If
If startcondition = "重载启动" Then
ka = kabelt(i, j + 3)
End If
End Sub
Private Sub beltxh(Pd As Single, n1 As Single, xh() As String, dl() As String)
'查普通V带型号和小带轮直径范围 计算功率Pb  小带轮转速n1 带型xh(1),xh(2) 小带轮直径d1(1)d1(2),xh大写字母
Dim nze1 As Single, nze2 As Single, nze3 As Single, nze4 As Single, nze5 As Single, nze6 As Single
Dim nze7 As Single, nze8 As Single, nze9 As Single
'选型图中的9条分型线
Dim nk1 As Single, nk2 As Single, nk3 As Single, nk4 As Single, nk5 As Single, nk6 As Single
'增加线的6段直线
nze1 = 787.5327 * Pd ^ 1.07
nze2 = 458.2745 * Pd ^ 1.095
nze3 = 237.9256 * Pd ^ 1.035
nze4 = 120 * Pd ^ 1.05324
nze5 = 52.8337 * Pd ^ 1.160658
nze6 = 29.44249 * Pd ^ 1.162165
nze7 = 7.63971 * Pd ^ 1.21196
nze8 = 2.614477 * Pd ^ 1.175764
nze9 = 0.7456016 * Pd ^ 1.252225
nk1 = 7066.3 * Pd ^ 0.6456 + 200
nk2 = 8182.6 * Pd ^ 0.7368 + 200
nk3 = 11090.4 * Pd ^ 0.8689 + 200
nk4 = 3905.5 * Pd ^ 0.5078 + 150
nk5 = 732.57 * Pd ^ 0.0541 + 150
nk6 = 550 + 100
If n1 >= nze2 + 50 And Pd <= 3.5 Or n1 >= nze2 + 50 And n1 <= nk1 And Pd <= 4.5 Then
xh(1) = "Z": xh(2) = "Z"
dl(1) = "50--71"
dl(2) = "80--100"
ElseIf n1 <= nze2 + 50 And n1 >= nze2 And Pd <= 3.5 Or n1 >= nze2 And n1 <= nk1 And Pd <= 5 Then
xh(1) = "Z": xh(2) = "A"
dl(1) = "80--100": dl(2) = dl(1)
ElseIf n1 <= nze2 And n1 >= nze2 - 50 And Pd <= 5 Or n1 >= nze2 - 50 And n1 <= nk2 And Pd <= 6 Then
xh(1) = "A": xh(2) = "Z"
dl(1) = "80--100": dl(2) = dl(1)
ElseIf n1 <= nze2 - 50 And n1 >= nze4 + 50 And Pd <= 5 Or n1 >= nze4 + 50 And n1 <= nk2 And Pd <= 10 Then
xh(1) = "A": xh(2) = xh(1)
dl(1) = "80--100": dl(2) = "112--140"
ElseIf n1 <= nze4 + 50 And n1 >= nze4 And Pd <= 5 Or n1 >= nze4 And n1 <= nk2 And Pd <= 10 Then
xh(1) = "A": xh(2) = "B"
dl(1) = "112--140": dl(2) = "125--140"
ElseIf n1 <= nze4 And n1 >= nze4 - 50 And Pd <= 5 Or n1 >= nze4 - 50 And n1 <= nk2 And Pd <= 10 Then
xh(1) = "B": xh(2) = "A"
dl(1) = "125--140": dl(2) = "112--140"
ElseIf n1 <= nze4 - 50 And n1 >= nze6 + 50 And Pd < 10 Or n1 >= nze6 + 50 And n1 <= nk3 And Pd <= 18 Then
xh(1) = "B": xh(2) = xh(1)
dl(1) = "125--140": dl(2) = "160--200"
ElseIf n1 <= nze6 + 50 And n1 > nze6 And Pd <= 10 Or n1 >= nze6 And n1 = nk3 And Pd <= 18 Then
xh(1) = "B": xh(2) = "C"
dl(1) = "160--200": dl(2) = "200--315"
ElseIf n1 <= nze6 And n1 >= nze6 - 30 And Pd <= 10 Or n1 >= nze6 - 30 And n1 <= nk3 And Pd <= 18 Then
xh(1) = "C": xh(2) = "B"
dl(1) = "200--315": dl(2) = "160--200"
ElseIf n1 <= nze6 - 30 And n1 >= nze7 + 30 And Pd <= 18 Or n1 >= nze7 + 30 And n1 <= nk4 And Pd <= 40 Then
xh(1) = "C": xh(2) = xh(1)
dl(1) = "200--315": dl(2) = dl(1)
ElseIf n1 <= nze7 + 30 And n1 >= nze7 And Pd <= 18 Or n1 >= nze7 And n1 <= nk4 And Pd <= 40 Then
xh(1) = "C": xh(2) = "D"
dl(1) = "200--315": dl(2) = "355--400"
ElseIf n1 <= nze7 And n1 >= nze7 - 30 And Pd <= 18 Or n1 >= nze7 - 30 And n1 <= nk4 And Pd <= 40 Then
xh(1) = "D": xh(2) = "C"
dl(1) = "355--400": dl(2) = "200--315"
ElseIf n1 <= nze7 - 30 And n1 >= nze9 + 30 And Pd <= 40 Or n1 >= nze9 + 30 And n1 <= nk5 And Pd <= 200 Then
xh(1) = "D": xh(2) = xh(1)
dl(1) = "355--400": dl(2) = "450--500"
ElseIf n1 <= nze9 + 30 And n1 >= nze9 And Pd <= 40 Or n1 >= nze9 And n1 <= nk5 And Pd <= 200 Then
xh(1) = "D": xh(2) = "E"
dl(1) = "450--500": dl(2) = "500--800"
ElseIf n1 <= nze9 And n1 >= nze9 - 30 And Pd <= 40 Or n1 >= nze9 - 30 And n1 <= nk5 And Pd <= 200 Then
xh(1) = "E": xh(2) = "D"
dl(1) = "500--800": dl(2) = "450--500"
ElseIf n1 <= nze9 - 30 And n1 > 0 And Pd <= 200 Or n1 > 0 And n1 <= 500 And Pd <= 250 Then
xh(1) = "E": xh(2) = xh(1)
dl(1) = "500--800": dl(2) = dl(1)
Else
xh(1) = "NIL": xh(2) = xh(1)
dl(1) = "NIL": dl(2) = dl(1)

End If
End Sub

Private Sub zhoujing() '计算轴颈的直径
Dim xuyongyingli As String
zhoucailiao = Trim(txtzhoucailiao.Text)
If txtzhoucailiao.Text = "" Or Val(txtzhoucailiao.Text) = 0 Then
MsgBox ("请输入轴材料代号")
End
End If
xuyongyingli = Val(txtxuyongyingli.Text)
dailunkongjing(1) = (9550! * 1000! * Pd / n1 * 16 / 3.14 / xuyongyingli) ^ (1 / 3)
dailunkongjing(2) = (9550! * 1000! * Pd / sn2 * 16 / 3.14 / xuyongyingli) ^ (1 / 3)
If Int(dailunkongjing(1) / 5) < dailunkongjing(1) / 5 Then
dailunkongjing(1) = 5 * Int(dailunkongjing(1) / 5) + 5
End If
If Int(dailunkongjing(2) / 5) < dailunkongjing(2) / 5 Then
dailunkongjing(2) = 5 * Int(dailunkongjing(2) / 5) + 5
End If
End Sub


Private Sub CmdEnd_Click()
End

End Sub

Private Sub cmdgoon_Click()
Dim x As Integer
spower = Val(txtpower.Text)
n1 = Val(Txtn1)
sn2 = Val(txtn2.Text)
si = Val(txti.Text)
If spower <= 0 And n1 <= 0 Then
MsgBox "功率、小带轮转速必须大于零"
ElseIf spower <= 0 Then
MsgBox "功率必须大于零"
ElseIf n1 <= 0 Then
MsgBox "小带轮转速必须大于零"
End If
If sn2 = 0 And si = 0 Then
MsgBox "从动轮转速和转动比不能同时为零"
Exit Sub
End If
If sworkcondition = " " Then MsgBox "工作情况不能为空": Exit Sub
If sworktime = " " Then MsgBox "工作时间不能同时为空": Exit Sub
If spower <> 0 And n1 <> 0 And sn2 <> 0 And sworktime <> "" And sworkcondition <> "" Or _
spower <> 0 And n1 <> 0 And si <> 0 And sworktime <> "" And sworkcondition <> "" Then
If si = 0 Then
si = n1 / sn2
End If
If sn2 = 0 Then
sn2 = n1 / si
End If
Call beltKA(sworktime, sworkcondition, ka, startcondition) '调用beltKA过程查Ka
Pd = spower * ka
Call beltxh(Pd, n1, xh(), dl()) '调用确定两种带型和两小带轮的直径范围
If xh(1) = "NIL" Then
MsgBox ("无合适带型!可能是转速N1太高或功率P太大,请重新确定N1;P!"): Exit Sub
End If
Else
MsgBox "输入数据正常,请重新输入": Exit Sub
End If
Call zhoujing     '调用zhoujing计算轴颈直径
FrmOptionxhdla.Lblxh1.Caption = xh(1)
FrmOptionxhdla.Lblxh2.Caption = xh(2)
FrmOptionxhdla.Visible = True
FrmOptionxhdla.Picdla.Visible = False
Frmbelt.Visible = False
FrmOptionxhdla.optionxh = 0
End Sub


Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then Call cmdgoon_Click
End Sub

Private Sub Form_Load()
txti.Visible = False
txtn2.Visible = False
Lstlight.Visible = False
Lstheavy.Visible = False
Lbltime1.Visible = False
Lbltime2.Visible = False

End Sub

Private Sub Lstheavy_Click()
sworktime = Lstheavy.Text
End Sub

Private Sub Lstlight_Click()
sworktime = Lstlight.Text
End Sub


Private Sub Optcondition1_Click()
sworkcondition = Optcondition1.Caption
End Sub

Private Sub Optcondition2_Click()
sworkcondition = Optcondition2.Caption
End Sub

Private Sub Optcondition3_Click()
sworkcondition = Optcondition3.Caption
End Sub

Private Sub Optcondition4_Click()
sworkcondition = Optcondition4.Caption
End Sub

Private Sub Optheavy_Click()
Lstlight.Visible = False
Lstheavy.Visible = True
Lbltime2.Visible = True
Lbltime1.Visible = False
startcondition = Optheavy.Caption

End Sub


Private Sub opti_Click()
txtn2.Visible = False
txti.Visible = True
txtn2.Text = ""
End Sub

Private Sub Optlight_Click()
Lstheavy.Visible = False
Lstlight.Visible = True
Lbltime1.Visible = True
Lbltime2.Visible = False
startcondition = Optlight.Caption

End Sub

Private Sub Optn2_Click()
txti.Visible = False
txtn2.Visible = True
txti.Text = ""
End Sub

Private Sub vsbxuyongyingl_Change()
txtxuyongyingli = vsbxuyongyongli.Value

End Sub


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -