V带传动常规设计的可视化编程
- 格式:pdf
- 大小:433.06 KB
- 文档页数:3
V带传动的程序设计成浩机自08-1班22080911 1、已知条件带传动设计的已知数据有:输入功率P,小带轮转速,传动比i,原动机种类,工作机载荷性质,中心距a,带传动每天工作时数。
设计题目:设计带式输送机的V带传动装置。
已知:原动机为Y型异步电动机,电动机额定功率,转速,,工作中有轻度冲击,单班制工作,要求中心距a为。
2、设计内容1)确定V带型号、基准长度及根数z,确定大小带轮基准直径,,实际中心距a,安装初拉力,压轴力Q。
2)选择合适的三维造型软件,建立大带轮的实体造型。
3、设计结果4、程序执行过程(截图)1、2、3、4、5、6、7、5、VB源程序:Private Sub Command1_Click() '导航窗口,开始新的计算Picture1.Visible = TrueEnd SubPrivate Sub Command10_Click()'计算功率Pc txt_pc.Text = CStr(Val(txt_ka) * Val(txt_p))End SubPrivate Sub Command11_Click()'调出工作情况系数表chaxun_ka.Visible = TrueEnd SubPrivate Sub Command12_Click() 'V带带轮最小基准直径和基准直径系列查询jizhunzhijing.Visible = TrueIf txt_xh.Text = "Z" Thentxt_jz.Text = "50, 56, 63, 71, 75, 80, 85, 90, 95, 100, 106, 112, 118, 125, 132, 140, 150, 160, 170, 180, 200, 212, 224, 236, 250, 265, 280, 300, 315, 355, 375, 400, 425, 450, 475, 500, 530, 560, 600, 630, 670, 710, 750, 800, 900, 1000"End IfIf txt_xh.Text = "A" Thentxt_jz.Text = "75, 80, 85, 90, 95, 100, 106, 112, 118, 125, 132, 140, 150, 160, 170, 180, 200, 212, 224, 236, 250, 265, 280, 300, 315, 355, 375, 400, 425, 450, 475, 500, 530, 560, 600, 630, 670, 710, 750, 800, 900, 1000"End IfIf txt_xh.Text = "B" Thentxt_jz.Text = "125, 132, 140, 150, 160, 170, 180, 200, 212, 224, 236, 250, 265, 280, 300, 315, 355, 375, 400, 425, 450, 475, 500, 530, 560, 600, 630, 670, 710, 750, 800, 900, 1000"End IfIf txt_xh.Text = "C" Thentxt_jz.Text = "200, 212, 224, 236, 250, 265, 280, 300, 315, 355, 375, 400, 425, 450, 475, 500, 530, 560, 600, 630, 670, 710, 750, 800, 900, 1000"End IfIf txt_xh.Text = "D" Thentxt_jz.Text = "355, 375, 400, 425, 450, 475, 500, 530, 560, 600, 630, 670, 710, 750, 800, 900, 1000"End IfIf txt_xh.Text = "E" Thentxt_jz.Text = "500, 530, 560, 600, 630, 670, 710, 750, 800, 900, 1000"End IfEnd SubPrivate Sub Command13_Click()'小带轮基准直径确定txt_d2j.Text = CStr(Format((Val(Text8.Text) * Val(txt_d1.T ext)), "#######.##"))'对小带轮转速n1进行圆整---------------------------------------------------------------------Dim i As IntegerDim n1 As Single, Y As Single, z As SingleDim n As VariantIf txt_xh.Text = "Z" Thenn = Array(400, 730, 800, 980, 1200, 1460, 1600, 2000, 2400, 2800, 3200)n1 = Val(txt_n1.Text)For i = 0 To 10If n1 <= n(i) ThenExit ForEnd IfNext iY = n(i)For i = 1 To 10If n1 <= n(i) ThenExit ForEnd IfNext iIf (n(i) - n1) <= (n1 - n(i - 1)) Thenz = n(i)Elsez = n(i - 1)End Iftxt_n1.Text = CStr(Y)ElseIf txt_xh.Text = "A" Thenn = Array(400, 730, 800, 980, 1200, 1460, 1600, 2000, 2400, 2800, 3200) n1 = Val(txt_n1.Text)For i = 0 To 10If n1 <= n(i) ThenExit ForEnd IfNext iY = n(i)For i = 1 To 10If n1 <= n(i) ThenExit ForEnd IfNext iIf (n(i) - n1) <= (n1 - n(i - 1)) Thenz = n(i)Elsez = n(i - 1)End Iftxt_n1.Text = CStr(Y)ElseIf txt_xh.Text = "B" Thenn = Array(400, 730, 800, 980, 1200, 1460, 1600, 2000, 2400, 2800, 3200)For i = 0 To 10If n1 <= n(i) ThenExit ForEnd IfNext iY = n(i)For i = 1 To 10If n1 <= n(i) ThenExit ForEnd IfNext iIf (n(i) - n1) <= (n1 - n(i - 1)) Thenz = n(i)Elsez = n(i - 1)End Iftxt_n1.Text = CStr(Y)ElseIf txt_xh.Text = "C" Thenn = Array(200, 300, 400, 500, 600, 730, 800, 980, 1200, 1460, 1600) n1 = Val(txt_n1.Text)For i = 0 To 10If n1 <= n(i) ThenExit ForEnd IfNext iY = n(i)For i = 1 To 10If n1 <= n(i) ThenExit ForEnd IfNext iIf (n(i) - n1) <= (n1 - n(i - 1)) Thenz = n(i)Elsez = n(i - 1)End IfElseIf txt_xh.Text = "D" Thenn = Array(200, 300, 400, 500, 600, 730, 800, 980, 1200, 1460, 1600) n1 = Val(txt_n1.Text)For i = 0 To 10If n1 <= n(i) ThenExit ForEnd IfNext iY = n(i)For i = 1 To 10If n1 <= n(i) ThenExit ForEnd IfNext iIf (n(i) - n1) <= (n1 - n(i - 1)) Thenz = n(i)Elsez = n(i - 1)End Iftxt_n1.Text = CStr(Y)ElseIf txt_xh.Text = "E" Thenn = Array(200, 300, 400, 500, 600, 730, 800, 980, 1200, 1460, 1600) n1 = Val(txt_n1.Text)For i = 0 To 10If n1 <= n(i) ThenExit ForEnd IfNext iY = n(i)For i = 1 To 10If n1 <= n(i) ThenExit ForEnd IfNext iIf (n(i) - n1) <= (n1 - n(i - 1)) Thenz = n(i)Elsez = n(i - 1)End Iftxt_n1.Text = CStr(Y)End IfEnd SubPrivate Sub Command14_Click()'圆整基准长度Ld Dim i As IntegerDim cd As Single, Y As Single, z As SingleDim n As Variantn = Array(400, 450, 500, 560, 630, 710, 800, 900, 1000, 1120, 1250, 1400, 1600, _1800, 2000, 2240, 2500, 2800, 3150, 3650, 4000, 4500, 5000, 5600, 6300, 7100, 8000, 9000, 10000)cd = Val(txt_lcd.Text)For i = 0 To 28If cd <= n(i) ThenExit ForEnd IfNext iY = n(i)For i = 1 To 28If cd <= n(i) ThenExit ForEnd IfNext iIf (n(i) - cd) <= (cd - n(i - 1)) Thenz = n(i)Elsez = n(i - 1)End Iftxt_ld.Text = CStr(Y)End SubPrivate Sub Command15_Click()'计算初定带长Dim pi As Doublepi = 3.1415926txt_lcd.Text = CStr(Format((2 * Val(txt_a0.Text) + (pi * (Val(txt_d1.Text) + Val(txt_d2.Text)) / 2) + ((Val(txt_d2.Text) - Val(txt_d1.Text)) ^ 2) / (4 * Val(txt_a0.Text))), "######.##"))End SubPrivate Sub Command16_Click()'计算实际中心距a txt_a.Text = CStr(Val(txt_a0.T ext) + (1 / 2) * (Val(txt_ld.Text) - Val(txt_lcd.Text)))End SubPrivate Sub Command17_Click()Picture5.Visible = FalsePicture10.Visible = TrueCommand5.Enabled = TrueEnd SubPrivate Sub Command19_Click()'计算带轮的包角α1 txt_bj.Text = CStr(Format((180 - (Val(txt_d2.Text) - Val(txt_d1.Text)) / Val(txt_a) * 57.3), "######.##"))End SubPrivate Sub Command2_Click()Picture2.Visible = FalsePicture5.Visible = FalsePicture10.Visible = FalsePicture12.Visible = FalsePicture1.Visible = FalseFrame1.Visible = TrueFrame12.Visible = FalseFrame25.Visible = FalseEnd SubPrivate Sub Command20_Click()'对小带轮包角α1进行圆整Dim i As IntegerDim cda As Single, w As Single, q As SingleDim n As Variantn = Array(70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180)cda = Val(txt_bj.Text)For i = 0 To 11If cda <= n(i) ThenExit ForEnd IfNext iw = n(i)For i = 1 To 11If cda <= n(i) ThenExit ForEnd IfNext iIf (n(i) - cda) <= (cda - n(i - 1)) Thenq = n(i)Elseq = n(i - 1)End Iftxt_bjdz.Text = CStr(q)End SubPrivate Sub Command21_Click()'确定包角系数If Val(txt_bjdz.Text) = 70 ThenText16.Text = "0.58"ElseIf Val(txt_bjdz.Text) = 80 ThenText16.Text = "0.64"ElseIf Val(txt_bjdz.Text) = 90 ThenText16.Text = "0.69"ElseIf Val(txt_bjdz.Text) = 100 ThenText16.Text = "0.74"ElseIf Val(txt_bjdz.Text) = 110 ThenText16.Text = "0.78"ElseIf Val(txt_bjdz.Text) = 120 ThenText16.Text = "0.82"ElseIf Val(txt_bjdz.Text) = 130 ThenText16.Text = "0.86"ElseIf Val(txt_bjdz.Text) = 140 ThenText16.Text = "0.89"ElseIf Val(txt_bjdz.Text) = 150 ThenText16.Text = "0.92"ElseIf Val(txt_bjdz.Text) = 160 ThenText16.Text = "0.95"ElseIf Val(txt_bjdz.Text) = 170 ThenText16.Text = "0.98"ElseIf Val(txt_bjdz.Text) = 180 ThenText16.Text = "1.00"End IfEnd SubPrivate Sub Command22_Click()'单根V带试验条件下许用功率Dim v As Integer, pi As Integer, d1 As Integer, p0 As Variantpi = 3.1415926v = pi * Val(txt_d1.Text) * Val(txt_n1.Text) / 60000d1 = Val(txt_d1.Text)If txt_xh.Text = "Z" Thenp0 = (0.246 * v ^ (-0.09) - 7.44 / d1 - 0.441 * ((10) ^ (-4)) * (v ^ 2)) * vElseIf txt_xh.Text = "A" Thenp0 = (0.449 * v ^ (-0.09) - 19.62 / d1 - 0.765 * ((10) ^ (-4)) * (v ^ 2)) * vElseIf txt_xh.Text = "B" Thenp0 = (0.794 * v ^ (-0.09) - 50.6 / d1 - 1.31 * ((10) ^ (-4)) * (v ^ 2)) * vElseIf txt_xh.Text = "C" Thenp0 = (1.48 * v ^ (-0.09) - 143.2 / d1 - 2.34 * ((10) ^ (-4)) * (v ^ 2)) * vElseIf txt_xh.Text = "D" Thenp0 = (3.15 * v ^ (-0.09) - 507.3 / d1 - 4.77 * ((10) ^ (-4)) * (v ^ 2)) * vElseIf txt_xh.Text = "E" Thenp0 = (4.57 * v ^ (-0.09) - 951.5 / d1 - 7.06 * ((10) ^ (-4)) * (v ^ 2)) * vEnd IfText17.Text = CStr(Format(p0, "######.##"))End SubPrivate Sub Command23_Click()'传递功率的增量值△P0 If txt_xh.Text = "Z" ThenIf Val(Text8.Text) >= 1.365 And Val(Text8.Text) <= 1.51 Then 'Z型号表第一行If Val(txt_n1.Text) = 400 Or 730 Or 800 ThenText18.Text = "0.01"ElseIf Val(txt_n1.Text) = 980 Or 1200 Or 1460 Or 1600 ThenText18.Text = "0.02"ElseIf Val(txt_n1.Text) = 2000 Or 2400 ThenText18.Text = "0.03"ElseIf Val(txt_n1.Text) = 2800 Or 3200 ThenText18.Text = "0.04"End IfEnd IfIf Val(Text8.T ext) >= 2 Then 'Z型号表第二行If Val(txt_n1.Text) = 400 ThenText18.Text = "0.01"ElseIf Val(txt_n1.Text) = 730 Or 800 Or 980 ThenText18.Text = "0.02"ElseIf Val(txt_n1.Text) = 1200 Or 1460 Or 1600 ThenText18.Text = "0.03"ElseIf Val(txt_n1.Text) = 2000 Or 2400 Or 2800 ThenText18.Text = "0.04"ElseIf Val(txt_n1.Text) = 3200 ThenText18.Text = "0.05"End IfEnd IfEnd IfIf txt_xh.Text = "A" ThenIf Val(Text8.Text) >= 1.35 And Val(Text8.Text) <= 1.51 Then 'A型号表第一行If Val(txt_n1.Text) = 400 ThenText18.Text = "0.04"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "0.07"ElseIf Val(txt_n1.Text) = 800 Or 980 ThenText18.Text = "0.08"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "0.11"ElseIf Val(txt_n1.Text) = 1460 ThenText18.Text = "0.13"ElseIf Val(txt_n1.Text) = 1600 ThenText18.Text = "0.15"ElseIf Val(txt_n1.Text) = 2000 ThenText18.Text = "0.19"ElseIf Val(txt_n1.Text) = 2400 ThenText18.Text = "0.23"ElseIf Val(txt_n1.Text) = 2800 ThenText18.Text = "0.26"ElseIf Val(txt_n1.Text) = 3200 ThenText18.Text = "0.30"End IfEnd IfIf Val(Text8.T ext) >= 2 Then 'A型号表第二行If Val(txt_n1.Text) = 400 ThenText18.Text = "0.05"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "0.09"ElseIf Val(txt_n1.Text) = 800 ThenText18.Text = "0.10"ElseIf Val(txt_n1.Text) = 980 ThenText18.Text = "0.11"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "0.15"ElseIf Val(txt_n1.Text) = 1460 ThenText18.Text = "0.17"ElseIf Val(txt_n1.Text) = 1600 ThenText18.Text = "0.19"ElseIf Val(txt_n1.Text) = 2000 ThenText18.Text = "0.24"ElseIf Val(txt_n1.Text) = 2400 ThenText18.Text = "0.29"ElseIf Val(txt_n1.Text) = 2800 ThenText18.Text = "0.34"ElseIf Val(txt_n1.Text) = 3200 ThenText18.Text = "0.39"End IfEnd IfEnd IfIf txt_xh.Text = "B" ThenIf Val(Text8.Text) >= 1.35 And Val(Text8.Text) <= 1.51 Then 'B型号表第一行If Val(txt_n1.Text) = 400 ThenText18.Text = "0.10"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "0.17"ElseIf Val(txt_n1.Text) = 800 ThenText18.Text = "0.20"ElseIf Val(txt_n1.Text) = 980 ThenText18.Text = "0.23"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "0.30"ElseIf Val(txt_n1.Text) = 1460 ThenText18.Text = "0.36"ElseIf Val(txt_n1.Text) = 1600 ThenText18.Text = "0.39"ElseIf Val(txt_n1.Text) = 2000 ThenText18.Text = "0.49"ElseIf Val(txt_n1.Text) = 2400 ThenText18.Text = "0.59"ElseIf Val(txt_n1.Text) = 2800 ThenText18.Text = "0.69"ElseIf Val(txt_n1.Text) = 3200 ThenText18.Text = "0.79"End IfEnd IfIf Val(Text8.T ext) >= 2 Then 'B型号表第二行If Val(txt_n1.Text) = 400 ThenText18.Text = "0.13"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "0.22"ElseIf Val(txt_n1.Text) = 800 ThenText18.Text = "0.25"ElseIf Val(txt_n1.Text) = 980 ThenText18.Text = "0.30"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "0.38"ElseIf Val(txt_n1.Text) = 1460 ThenText18.Text = "0.46"ElseIf Val(txt_n1.Text) = 1600 ThenText18.Text = "0.51"ElseIf Val(txt_n1.Text) = 2000 ThenText18.Text = "0.63"ElseIf Val(txt_n1.Text) = 2400 ThenText18.Text = "0.76"ElseIf Val(txt_n1.Text) = 2800 ThenText18.Text = "0.89"ElseIf Val(txt_n1.Text) = 3200 ThenText18.Text = "1.01"End IfEnd IfEnd IfIf txt_xh.Text = "C" ThenIf Val(Text8.Text) >= 1.354 And Val(Text8.Text) <= 1.51 Then 'C型号表第一行If Val(txt_n1.Text) = 200 ThenText18.Text = "0.14"ElseIf Val(txt_n1.Text) = 300 ThenText18.Text = "0.21"ElseIf Val(txt_n1.Text) = 400 ThenText18.Text = "0.27"ElseIf Val(txt_n1.Text) = 500 ThenText18.Text = "0.34"ElseIf Val(txt_n1.Text) = 600 ThenText18.Text = "0.41"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "0.48"ElseIf Val(txt_n1.Text) = 800 ThenText18.Text = "0.55"ElseIf Val(txt_n1.Text) = 980 ThenText18.Text = "0.65"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "0.82"ElseIf Val(txt_n1.Text) = 1460 ThenText18.Text = "0.99"ElseIf Val(txt_n1.Text) = 1600 ThenText18.Text = "1.10"End IfEnd IfIf Val(Text8.T ext) >= 2 Then 'C型号表第二行If Val(txt_n1.Text) = 200 ThenText18.Text = "0.18"ElseIf Val(txt_n1.Text) = 300 ThenText18.Text = "0.26"ElseIf Val(txt_n1.Text) = 400 ThenText18.Text = "0.35"ElseIf Val(txt_n1.Text) = 500 ThenText18.Text = "0.44"ElseIf Val(txt_n1.Text) = 600 ThenText18.Text = "0.53"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "0.62"ElseIf Val(txt_n1.Text) = 800 ThenText18.Text = "0.71"ElseIf Val(txt_n1.Text) = 980 ThenText18.Text = "0.83"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "1.06"Text18.Text = "1.27"ElseIf Val(txt_n1.Text) = 1600 ThenText18.Text = "1.41"End IfEnd IfEnd IfIf txt_xh.Text = "D" ThenIf Val(Text8.Text) >= 1.35 And Val(Text8.Text) <= 1.51 Then 'D型号表第一行If Val(txt_n1.Text) = 200 ThenText18.Text = "0.49"ElseIf Val(txt_n1.Text) = 300 ThenText18.Text = "0.73"ElseIf Val(txt_n1.Text) = 400 ThenText18.Text = "0.97"ElseIf Val(txt_n1.Text) = 500 ThenText18.Text = "1.22"ElseIf Val(txt_n1.Text) = 600 ThenText18.Text = "1.46"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "1.70"ElseIf Val(txt_n1.Text) = 800 ThenText18.Text = "1.95"ElseIf Val(txt_n1.Text) = 980 ThenText18.Text = "2.31"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "2.92"ElseIf Val(txt_n1.Text) = 1460 ThenText18.Text = "3.52"ElseIf Val(txt_n1.Text) = 1600 ThenText18.Text = "3.89"End IfEnd IfIf Val(Text8.T ext) >= 2 Then 'D型号表第二行If Val(txt_n1.Text) = 200 ThenText18.Text = "0.63"ElseIf Val(txt_n1.Text) = 300 ThenText18.Text = "0.94"ElseIf Val(txt_n1.Text) = 400 ThenText18.Text = "1.25"Text18.Text = "1.56"ElseIf Val(txt_n1.Text) = 600 ThenText18.Text = "1.88"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "2.19"ElseIf Val(txt_n1.Text) = 800 ThenText18.Text = "2.50"ElseIf Val(txt_n1.Text) = 980 ThenText18.Text = "2.97"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "3.75"ElseIf Val(txt_n1.Text) = 1460 ThenText18.Text = "4.53"ElseIf Val(txt_n1.Text) = 1600 ThenText18.Text = "5.00"End IfEnd IfEnd IfIf txt_xh.Text = "E" ThenIf Val(Text8.Text) >= 1.354 And Val(Text8.Text) <= 1.51 Then 'E型号表第一行If Val(txt_n1.Text) = 200 ThenText18.Text = "0.96"ElseIf Val(txt_n1.Text) = 300 ThenText18.Text = "1.45"ElseIf Val(txt_n1.Text) = 400 ThenText18.Text = "1.93"ElseIf Val(txt_n1.Text) = 500 ThenText18.Text = "2.41"ElseIf Val(txt_n1.Text) = 600 ThenText18.Text = "2.89"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "3.38"ElseIf Val(txt_n1.Text) = 800 ThenText18.Text = "3.86"ElseIf Val(txt_n1.Text) = 980 ThenText18.Text = "4.58"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "5.61"ElseIf Val(txt_n1.Text) = 1460 ThenText18.Text = "6.83"Text18.Text = "-"End IfEnd IfIf Val(Text8.T ext) >= 2 Then 'E型号表第二行If Val(txt_n1.Text) = 200 ThenText18.Text = "1.24"ElseIf Val(txt_n1.Text) = 300 ThenText18.Text = "1.86"ElseIf Val(txt_n1.Text) = 400 ThenText18.Text = "2.48"ElseIf Val(txt_n1.Text) = 500 ThenText18.Text = "3.10"ElseIf Val(txt_n1.Text) = 600 ThenText18.Text = "3.72"ElseIf Val(txt_n1.Text) = 730 ThenText18.Text = "4.34"ElseIf Val(txt_n1.Text) = 800 ThenText18.Text = "4.96"ElseIf Val(txt_n1.Text) = 980 ThenText18.Text = "5.89"ElseIf Val(txt_n1.Text) = 1200 ThenText18.Text = "7.21"ElseIf Val(txt_n1.Text) = 1460 ThenText18.Text = "8.78"ElseIf Val(txt_n1.Text) = 1600 ThenText18.Text = "-"End IfEnd IfEnd IfEnd SubPrivate Sub Command24_Click()Picture10.Visible = FalsePicture12.Visible = TrueCommand36.Enabled = TrueEnd SubPrivate Sub Command26_Click() '确定长度系数KL If txt_xh.Text = "Z" ThenIf Val(txt_ld.Text) = 400 Then 'Z型号表Text19.Text = "+0.87"ElseIf Val(txt_ld.Text) = 450 ThenText19.Text = "+0.89"ElseIf Val(txt_ld.Text) = 500 ThenText19.Text = "+0.91"ElseIf Val(txt_ld.Text) = 630 ThenText19.Text = "+0.96"ElseIf Val(txt_ld.Text) = 710 ThenText19.Text = "+0.99"ElseIf Val(txt_ld.Text) = 800 ThenText19.Text = "+1.00"ElseIf Val(txt_ld.Text) = 900 ThenText19.Text = "+1.03"ElseIf Val(txt_ld.Text) = 1120 ThenText19.Text = "+1.08"ElseIf Val(txt_ld.Text) = 1250 ThenText19.Text = "+1.11"ElseIf Val(txt_ld.Text) = 1400 ThenText19.Text = "+1.14"ElseIf Val(txt_ld.Text) = 1600 ThenText19.Text = "+1.16"ElseIf Val(txt_ld.Text) = 1800 ThenText19.Text = "+1.18"End IfElseIf txt_xh.Text = "A" ThenIf Val(txt_ld.Text) = 630 Then 'A型号表Text19.Text = "+0.81"ElseIf Val(txt_ld.Text) = 710 ThenText19.Text = "+0.83"ElseIf Val(txt_ld.Text) = 800 ThenText19.Text = "+0.85"ElseIf Val(txt_ld.Text) = 900 ThenText19.Text = "+0.87"ElseIf Val(txt_ld.Text) = 1000 ThenText19.Text = "+0.89"ElseIf Val(txt_ld.Text) = 1120 ThenText19.Text = "+1.00"ElseIf Val(txt_ld.Text) = 1250 ThenText19.Text = "+0.93"ElseIf Val(txt_ld.Text) = 1400 ThenText19.Text = "+0.96"ElseIf Val(txt_ld.Text) = 1600 ThenText19.Text = "+0.99"ElseIf Val(txt_ld.Text) = 1800 ThenText19.Text = "+1.01"ElseIf Val(txt_ld.Text) = 2000 ThenText19.Text = "+1.03"ElseIf Val(txt_ld.Text) = 2240 ThenText19.Text = "+1.06"ElseIf Val(txt_ld.Text) = 2500 ThenText19.Text = "+1.09"ElseIf Val(txt_ld.Text) = 2800 ThenText19.Text = "+1.11"ElseIf Val(txt_ld.Text) = 3150 ThenText19.Text = "+1.13"ElseIf Val(txt_ld.Text) = 3650 ThenText19.Text = "+1.17"ElseIf Val(txt_ld.Text) = 4000 ThenText19.Text = "+1.19"End IfElseIf txt_xh.Text = "B" Then 'B型号表If Val(txt_ld.Text) = 900 ThenText19.Text = "+0.82"ElseIf Val(txt_ld.Text) = 1000 ThenText19.Text = "+0.84"ElseIf Val(txt_ld.Text) = 1120 ThenText19.Text = "+0.86"ElseIf Val(txt_ld.Text) = 1250 ThenText19.Text = "+0.88"ElseIf Val(txt_ld.Text) = 1400 ThenText19.Text = "+0.90"ElseIf Val(txt_ld.Text) = 1600 ThenText19.Text = "+0.92"ElseIf Val(txt_ld.Text) = 1800 ThenText19.Text = "+0.95"ElseIf Val(txt_ld.Text) = 2000 ThenText19.Text = "+0.98"ElseIf Val(txt_ld.Text) = 2240 ThenText19.Text = "+1.00"ElseIf Val(txt_ld.Text) = 2500 ThenText19.Text = "+1.03"ElseIf Val(txt_ld.Text) = 2800 ThenText19.Text = "+1.05"ElseIf Val(txt_ld.Text) = 3150 ThenText19.Text = "+1.07"ElseIf Val(txt_ld.Text) = 3650 ThenText19.Text = "+1.09"ElseIf Val(txt_ld.Text) = 4000 ThenText19.Text = "+1.13"ElseIf Val(txt_ld.Text) = 4500 ThenText19.Text = "+1.15"ElseIf Val(txt_ld.Text) = 5000 ThenText19.Text = "+1.18"End IfElseIf txt_xh.Text = "C" Then 'C型号表If Val(txt_ld.Text) = 1600 ThenText19.Text = "+0.83"ElseIf Val(txt_ld.Text) = 1800 ThenText19.Text = "+0.86"ElseIf Val(txt_ld.Text) = 2000 ThenText19.Text = "+0.88"ElseIf Val(txt_ld.Text) = 2240 ThenText19.Text = "+0.91"ElseIf Val(txt_ld.Text) = 2500 ThenText19.Text = "+0.93"ElseIf Val(txt_ld.Text) = 2800 ThenText19.Text = "+0.95"ElseIf Val(txt_ld.Text) = 3150 ThenText19.Text = "+0.97"ElseIf Val(txt_ld.Text) = 3650 ThenText19.Text = "+0.99"ElseIf Val(txt_ld.Text) = 4000 ThenText19.Text = "+1.02"ElseIf Val(txt_ld.Text) = 4500 ThenText19.Text = "+1.04"ElseIf Val(txt_ld.Text) = 5000 ThenText19.Text = "+1.07"ElseIf Val(txt_ld.Text) = 5600 ThenText19.Text = "+1.09"ElseIf Val(txt_ld.Text) = 6300 ThenText19.Text = "+1.12"ElseIf Val(txt_ld.Text) = 7100 ThenText19.Text = "+1.15"ElseIf Val(txt_ld.Text) = 8000 ThenText19.Text = "+1.18"ElseIf Val(txt_ld.Text) = 9000 ThenText19.Text = "+1.21"ElseIf Val(txt_ld.Text) = 10000 ThenText19.Text = "+1.23"End IfElseIf txt_xh.Text = "D" Then 'D型号表If Val(txt_ld.Text) = 2800 ThenText19.Text = "+0.83"ElseIf Val(txt_ld.Text) = 3150 ThenText19.Text = "+0.86"ElseIf Val(txt_ld.Text) = 3650 ThenText19.Text = "+0.89"ElseIf Val(txt_ld.Text) = 4000 ThenText19.Text = "+0.91"ElseIf Val(txt_ld.Text) = 4500 ThenText19.Text = "+0.93"ElseIf Val(txt_ld.Text) = 5000 ThenText19.Text = "+0.96"ElseIf Val(txt_ld.Text) = 5600 ThenText19.Text = "+0.98"ElseIf Val(txt_ld.Text) = 6300 ThenText19.Text = "+1.00"ElseIf Val(txt_ld.Text) = 7100 ThenText19.Text = "+1.03"ElseIf Val(txt_ld.Text) = 8000 ThenText19.Text = "+1.06"ElseIf Val(txt_ld.Text) = 9000 ThenText19.Text = "+1.08"ElseIf Val(txt_ld.Text) = 10000 ThenText19.Text = "+1.11"End IfElseIf txt_xh.Text = "E" Then 'E型号表If Val(txt_ld.Text) = 4500 ThenText19.Text = "+0.90"ElseIf Val(txt_ld.Text) = 5000 ThenText19.Text = "+0.92"ElseIf Val(txt_ld.Text) = 5600 ThenText19.Text = "+0.95"ElseIf Val(txt_ld.Text) = 6300 ThenText19.Text = "+0.97"ElseIf Val(txt_ld.Text) = 7100 ThenText19.Text = "+1.00"ElseIf Val(txt_ld.Text) = 8000 ThenText19.Text = "+1.02"ElseIf Val(txt_ld.Text) = 9000 ThenText19.Text = "+1.05"ElseIf Val(txt_ld.Text) = 10000 ThenText19.Text = "+1.07"End IfEnd IfEnd SubPrivate Sub Command27_Click()'计算V带根数txt_zcd.Text = CStr(Format(Val(txt_pc.Text) / ((Val(Text17.Text) + Val(Text18.Text)) * Val(Text16.Text) * Val(Text19.T ext)), "######.##"))End SubPrivate Sub Command28_Click()'对V带根数进行圆整txt_zyz.T ext = CStr(Int(Val(txt_zcd.Text)) + 1)End SubPrivate Sub Command29_Click()'载入课程说明中原始数据txt_p.Text = "7.5"txt_n1.Text = "1450"txt_n2.Text = "630"txt_ka.Text = "1.1"If Text8.Text = "" ThenText8.Text = CStr(Val(txt_n1.Text) / Val(txt_n2.Text))Elsetxt_n2.Text = CStr(Val(txt_n1.Text) / Val(Text8.Text))End IfEnd SubPrivate Sub Command3_Click()Picture2.Visible = TruePicture5.Visible = FalsePicture10.Visible = FalsePicture12.Visible = FalsePicture1.Visible = FalseFrame1.Visible = FalseFrame12.Visible = FalseFrame25.Visible = FalseEnd SubPrivate Sub Command30_Click()chaxun_ka.Visible = FalseEnd SubPrivate Sub Command31_Click()jizhunzhijing.Visible = FalseEnd SubPrivate Sub Command32_Click()'查询每米带质量q If txt_xh.Text = "Z" Thentxt_q.Text = "0.06"ElseIf txt_xh.Text = "A" Thentxt_q.Text = "0.10"ElseIf txt_xh.Text = "B" Thentxt_q.Text = "0.17"ElseIf txt_xh.Text = "C" Thentxt_q.Text = "0.30"ElseIf txt_xh.Text = "D" Thentxt_q.Text = "0.62"ElseIf txt_xh.Text = "E" Thentxt_q.Text = "0.90"End IfEnd SubPrivate Sub Command33_Click()'计算初拉力F0 txt_f0.Text = CStr(Format(500 * Val(txt_pc.Text) / (Val(txt_zyz.Text) * Val(txt_v.Text)) * (2.5 / Val(Text16.Text) - 1) + Val(txt_q.Text) * (Val(txt_v.Text)) ^ 2, "######.##"))End SubPrivate Sub Command34_Click()'计算压轴力Q Text1.Text = CStr(Format(2 * Val(txt_zyz.T ext) * Val(txt_f0.Text) * Sin(Val(txt_bj.Text) / (4 * 180) * 3.1415926), "######.##"))End SubPrivate Sub Command35_Click()'对实验所得数据进行汇总Picture12.Visible = FalseFrame25.Visible = TrueText5.Text = txt_xh.TextText6.Text = txt_d1.TextText7.Text = txt_d2.TextText9.Text = Text2.TextText10.Text = txt_ld.TextText11.Text = txt_a.T extText12.Text = txt_bj.T extText13.Text = txt_zyz.TextText14.Text = txt_f0.TextText15.Text = Text1.T extEnd SubPrivate Sub Command36_Click()Picture2.Visible = FalsePicture5.Visible = FalsePicture10.Visible = FalsePicture12.Visible = TruePicture1.Visible = FalseFrame1.Visible = FalseFrame12.Visible = FalseFrame25.Visible = FalseEnd SubPrivate Sub Command37_Click()'结束程序EndEnd SubPrivate Sub Command38_Click()Picture2.Visible = FalsePicture5.Visible = FalsePicture10.Visible = FalsePicture12.Visible = FalsePicture1.Visible = FalseFrame1.Visible = FalseFrame12.Visible = TrueEnd SubPrivate Sub Command4_Click()Picture2.Visible = FalsePicture5.Visible = TruePicture10.Visible = FalsePicture12.Visible = FalsePicture1.Visible = FalseFrame1.Visible = False。
基于AutoCAD的V型带轮参数化绘图系统的开发AutoCAD是一款在工程设计和制图领域应用广泛的软件,其功能强大且易于使用。
随着数字化时代的到来,许多机械制图的工作已经从手工绘图转变为计算机辅助绘图。
本文将探讨如何利用AutoCAD开发一款V型带轮参数化绘图系统。
一、需求分析在进行软件开发之前,我们首先需要明确V型带轮的主要参数。
V型带轮是一种机械传动装置,主要由带轮轮缘直径、带轮轮缘宽度、带轮锥角、中心距等几个主要参数构成。
因此,我们需要设计一款能够自动计算和生成V型带轮图形的软件,支持自定义参数并具备可视化操作的特点。
二、软件设计1. 界面设计软件的主界面设计应该清晰简洁并具有可视化的操作界面,用户可以在界面上直观的调整V型带轮的参数,并通过预览图像实时查看效果。
界面上应该包含带轮轮缘直径、带轮轮缘宽度、带轮锥角、中心距等几个主要参数以及数量等参数,以充分满足用户的需求。
2. 参数化设计V型带轮是机械传动装置中重要的零部件,由于其主要参数的变化会直接影响到整个机械系统的运行效果,因此,我们需要采用参数化设计来满足不同用户的需求。
在软件设计中,我们需要将V型带轮的主要参数设定为全局变量,并在界面中显示和调整参数,用户可以根据实际需要,自由地改变参数来满足不同的机械传动需求。
3. 数据处理在软件运行过程中,我们需要将用户所输入的数据进行处理,以便自动生成带轮的图形。
主要处理程序如下:1)根据所输入参数,计算带轮的相关参数;2)生成带轮的轮缘形状;3)将轮缘形状绘制在界面上,并通过预览图像实时查看效果。
三、软件测试在软件开发完成后,我们需要对软件进行严格的测试,以保障软件质量。
测试分为功能测试和性能测试两个方面。
功能测试主要测试软件能否正常运行,能否按照用户的需求自动计算和生成V型带轮图形;性能测试主要测试软件的运行效率和稳定性,以确保软件能够在不断变化的机械传动领域中稳定运行和不断提升效率。
四、总结基于AutoCAD的V型带轮参数化绘图系统的开发,是一项较为复杂的工程。
V带传动常规设计的Matlab可视化编程实现
许静静;叶南海;仇勇;帅词俊
【期刊名称】《机械科学与技术》
【年(卷),期】2002(021)004
【摘要】V带传动常规设计在机械设计中相当重要,一般根据给定的已知条件如功率、转速、中心距以及其工作环境等参数来确定.本文运用Matlab语言强大的计算及图形可视化功能,编制M-函数进行V带传动常规设计,其特点是简洁、高效,具有广阔的应用前景.
【总页数】2页(P683-684)
【作者】许静静;叶南海;仇勇;帅词俊
【作者单位】中南大学,机电工程学院,长沙,410083;中南大学,机电工程学院,长沙,410083;中南大学,机电工程学院,长沙,410083;中南大学,机电工程学院,长沙,410083
【正文语种】中文
【中图分类】TH166
【相关文献】
1.V带传动常规设计的可视化编程 [J], 周铭丽;应瑞功;周铭秋
2.基于Matlab的V带传动可视化编程技术 [J], 徐静;董雁;翁慧燕;罗剑程
3.基于Matlab的低矮式破碎机V带传动模糊优化设计 [J], 刘静;丁凌蓉
4.基于Matlab的V带传动多目标优化设计 [J], 覃金彩;史彬华;江全才
5.V带传动常规设计的可视化编程技术 [J], 叶南海;夏建芳;许静静;高斌
因版权原因,仅展示原文概要,查看原文内容请购买。
机械设计作业任务书题目:液体搅拌机中的V带传动结构简图见下图:方案P (KW) n m(r/mi n) n w(r / min) i1 轴承座中心高H( mm)最短工作年限L工作环境5.2.3 4 720 80 2.5 200 3年3班室内潮湿确定设计功率F d设计功率是根据需要传递的名义功率、载荷性质、原动机类型和每天连续工作的时间长短等因素共同确定的,表达式如下:Pd = K A U P式中P ――需要传递的名义功率K A――工作情况系数,按表2工作情况系数K A选取K A=1.2;选择带型所以P d =K A L P =1.2x4 =4.8kW根据F d、n1,查看图5.71可选取B型带。
确定带轮的基准直径d d 1和d d 2d dmin知B型带d dmin =125mm,在优选直径系列选取小带轮基准直径: d dj =140mm ;大带轮基准直径: d d2 =i1L d d1 =2.5x140 = 350mm查表优先选取大带轮基准直径d d2 = 355mm ;其传动比误差心=3552.5-—1402.5咒100%=1.43%<5%,故可用。
验算带的速度兀Ld d1L n1 兀X140X720 ,V = ------ = ----------- = 5.3m /s60 咒1000 60^1000式中n1——电动机转速;d d1—小带轮基准直径;即v=5.3m/s< V max=25m/s,符合要求。
确定中心距a和V带基准长度L i根据:0.7(d d1 +d d2)兰a o <2(d d1 +d d2)初步确定中心距0.7(140+355)=346.5 < <2(140+355)=990考虑到应使结构紧凑,选取中心距a0=400mm初算带的基准长度L d':2 2-=2X400+ 王x(140+355)+(355-140)=1606.0mm2 4x400式中L d 带的标准基准长度;L d 带的初算基准长度;V带带轮最小基准直径a 。
机械零件CAD设计之普通V带传动设计-----------------------作者:-----------------------日期:机械零件CAD设计说明书普通V带传动设计学院: 航空制造工程学院专业:材料成型及控制工程学号:09033507:饶祥指导老师:绪坤2011年11月16日目录一、设计容 (3)二、V带传动总体设计 (3)三、各带轮的设计 (5)1、结构尺寸设计 (5)2、材料的选择,结构形式设计 (6)3、3D软件设计零件 (6)四、轴的设计 (6)五、机架的设计 (6)六、零件的装配 (7)七、参考资料 (8)八、设计小结 (9)1、设计过程总结 (9)2、设计方法 (9)3、设计心得与收获 (9)一、设计容。
1.已知条件:电机功率W=4Kw,小带轮转速n1=1440 r/min, 传动比i=3,传动比允许误差≤5%±轻度冲击;两班制。
2.设计容和要求。
1)V带传动的设计计算。
2)轴径设计。
取45号刚时,按下式估算:min 1.03d≥,并圆整;3)V带轮的结构设计。
选择带轮的材料、结构形式、计算基本结构尺寸;4)用3D软件设计零件及装配图,并标注主要的特征尺寸;5)生成大带轮零件图(工程图),并标注尺寸、粗糙度等。
二、V带传动总体设计1. 确定计算功率ca P。
由表8-7查得工作情况系数A K=1.2,故1.2×4=4.8kw2. 选择V带的带型。
根据ca P、n1由图8-10选用A型。
3. 确定带轮的基准直径d d,并验算带速v 。
1)初选小带轮的基准直径1d d 。
由表8-6和表8-8,取小带轮的基准直径1d d =90mm 。
2)验算带速v 。
按式(8-13)验算带的速度。
6.78m/s因为5/30/m s v m s <<,故带速合适。
3)计算大带轮的基准直径.根据式(8-15a ),计算大带轮的基准直径2d d 。
3.0×90=270mm 圆整为2d d =280mm 。
机械零件CAD设计之普通V带传动设计机械零件CAD设计之普通V带传动设计在机械制造中,普通V带传动是一种广泛应用的传动方式,它具有高效、节能、可靠、寿命长等优点,应用范围广泛,涵盖了工业生产、农业生产、建筑、交通运输等多个领域。
对于普通V带传动的设计,CAD技术的运用可以有效提高设计的准确度和效率。
下面我们就来讲一下,机械零件CAD设计之普通V带传动设计。
一、普通V带传动的结构普通V带传动包括V带轮、V带、轴承及轴等零部件,其中,V带轮是V带传动的主要零部件,它分为主动轮和从动轮两种,主动轮通过电机、发动机等动力输入设备传递动力,使V带转动,从而传递动力到从动轮,驱动机器设备工作。
V带是传递动力的主要介质,在传动过程中,其承受张力并将动力传递到从动轮上。
轴承的作用是支撑旋转的V带轮和从动轮,同时起到减少摩擦和耐磨的作用。
轴是连接各种零部件的连接体,他承受从V带轮传递下来的转矩,将力传递到机器设备中。
二、普通V带传动的参数计算在进行普通V带传动的设计时,需要进行参数计算,以确保设计的准确性和可靠性。
常用到的传动计算参数主要有:1. 动力传递功率(P):指传动系统传递动力的能力,单位为千瓦(kW)。
2. 传动转速比(i):表示主动轮的转速与从动轮的转速之比。
3. 带速比(v):是V带传动带速到轮速的比率。
4. V带张紧力(Ft):是传递轴上V带所受的张力,单位为牛顿(N)。
5. V带轮直径(Dp):是V带轮的直径,它决定了V带的长度和张力。
6. V带长度(L):是V带传动时的有效长度,其中,传输功率越大,带长度越长。
7. 被传动轴上的扭矩(T2):是从动轮所承受的扭矩,它与动力传递功率、传动转速比和V带张紧力有关系。
通过计算这些参数,我们可以得到准确的设计数据,为普通V带传动提供高效、可靠的基础。
三、普通V带传动的CAD设计机械零件CAD设计是现代机械工程中必不可少的技术,它可以提高设计的精度和效率,避免传统手工绘图的繁琐和出错。
v带传动设计步骤
嘿,朋友们!咱今天就来唠唠这 V 带传动设计步骤。
你想啊,这 V 带传动就好比是一辆马车,要想让它稳稳当当、顺顺利利地跑起来,那可得好好设计一番呢!
首先呢,咱得搞清楚要传递多大的功率,这就像是要知道马车要拉
多重的货物。
要是连这个都不清楚,那后面的设计不就成了瞎折腾嘛!然后呢,根据这个功率来选择合适的 V 带型号,这就跟给马车选合适
的马匹一样,马太弱了拉不动,马太强了又浪费。
接下来可就重要啦,得计算带轮的基准直径。
这就好像是给马车的
轮子定个大小,轮子太小了跑不快,轮子太大了又占地方还不灵活。
再然后呢,要确定中心距。
这就好比是决定马车两个轮子之间的距离,太近了容易碰着,太远了又不稳当。
设计带的根数也不能马虎啊!这就像是决定马车要用几根缰绳一样,少了拉不住,多了又乱套。
还有啊,要校核带轮的包角。
这就如同看看马车的缰绳能不能把马
牢牢地控制住,包角太小了可不行,容易打滑呢!
别忘了张紧装置的设计哦,这就好比给马车配上合适的缰绳调节装置,让马车始终能保持合适的张力,跑起来更顺畅。
咱这么一比喻,是不是觉得这 V 带传动设计挺有意思的呀?这每一步都得仔细琢磨,就像盖房子打地基一样,基础不牢,那可就麻烦啦!咱可不能随随便便就对付过去,得认真对待,不然到时候出了问题可
就不好收拾啦!所以啊,大家在进行 V 带传动设计的时候,一定要按
照这些步骤一步一步来,别嫌麻烦,这都是为了让咱的传动系统能稳
稳当当、高效工作呀!你们说是不是这个理儿?。
普通V带传动GUI设计说明书题目:V带传动GUI设计系别:机电工程学院班号:1008102学号:1100800418姓名:陈丁日期:2012年10月16一、普通V带传动设计内容和任务1、普通V带传动设计内容给定原始数据:传递的功率P,小带轮转速n1,传动比i,工作条件。
设计内容:带型号,基准长度Ld,根数Z,传动中心距a,小带轮基准直径dd1、大带轮基准直径dd2,初拉力F0,和压轴力Q,带轮轮缘宽度B。
2、电算的任务:(1)编制V带传动设计程序框图。
(2)编制V带传动设计原程序。
(3)按习题或作业中数据运行程序,进行计算并输出所有结果。
二、变量标识符三、程序框图四、使用说明本程序应该在matlab2012Ra中运行本程序使用很简单,可以对普通V带进行简单的设计,实现了自动化,使用者只需根据用户界面提示信息进行数据输入后按确定键就可进行相应的V带设计。
根据计算,程序会提醒用户在若干推荐值中选取小带轮直径,并自动提示用户获取与理论大带轮值接近的值,提供中心距初始范围,即可算出所需结果,若不合格则可进行重复计算,也可进行在相同初始条件下地带轮重新计算。
特殊功能:界面简洁,不用频繁切换即可完成,所有参数均显示在界面上,可以清楚的显示计算结果的,自动查找各种必要的修正系数。
五、结果比较三种带型各三种直径共九个计算结果如下:根据计算结果可以看到,九组结果中,A型带的F0值偏小,FQ值随型号增加而减小,Z值也随型号和小带轮直径增加而减小,到C型带时,Z已接近于1。
综合小带轮大小和受力大小,选择A型带中小带轮直径为125mm,中心距为500mm为设计尺寸。
计算过程截图显示:程序可以显示错误和提醒六、程序源代码(mat lab语言GUI编写)由于GUI界面编程自动生成函数较多,下面代码为核心代码。
function pushbutton1_Callback(hObject, eventdata, handl es)%使用密码进入界面val1 = get(handl es.edit1,'string');val2 = get(handl es.edit2,'string');h = gcf;set(h,'resize','on')if (strcmp(val1 ,'陈丁') && strcmp(val2,'1100800418'))jxsj_v4;set(h,'visibl e','off');elseerrordlg('错误!密码:陈丁、1100800418');endfunction jxsj_v4_OpeningFcn(hObject, eventdata, handl es, varargin) handl es.output = hObject;gl obal KP0 Klset(handl es.tip,'String','请输入已知数据','Fontsize',12);Kl = xlsread('机械设计用.xl sx',1);KP0 = xlsread('机械设计用.xlsx',2);set(gcf,'resize','on');guidata(hObject, handl es);function varargout = jxsj_v4_OutputFcn(hObject, eventdata, handl es) function P_Callback(hObject, eventdata, handl es) %传递功率回调函数gl obal PP = str2d oubl e(get(hObject,'String')); %传递(名义)功率function n_Callback(hObject, eventdata, handl es) %电机转速回调函数gl obal n1n1 = str2d oubl e(get(hObject,'String')); %电机(小带轮)转速function I_Callback(hObject, eventdat a, handl es) %传动比回调函数gl obal ii = str2d oubl e(get(hObject,'String')); %传动比function sure3_Callback(hObject, eventdata, handl es)gl obal Ka P Pd;%% 工作情况系数a(1,:,:)=[1 1.1 1.2;1.1 1.2 1.3;1.2 1.3 1.4;1.3 1.4 1.5];a(2,:,:)=[1.1 1.2 1.3;1.2 1.3 1.4;1.4 1.5 1.6;1.5 1.6 1.8];x = get(handl es.YDJ,'Value'); %工作机工作情况y = get(handl es.GZJ,'Value'); %原动机类别z = get(handl es.TIME,'Value'); %一天工作时间(h)Ka = a(x,y,z); %工作系数Kax1 = get(handl es.rbt1,'value'); %是否反复启动x2 = get(handl es.rbt2,'value'); %是否正反转频繁x3 = get(handl es.rbt3,'value'); %工作条件是否恶劣if (x1 +x2 + x3)>0Ka = 1.1*Ka ;endPd = Ka*P; %设计功率set(handl es.Pd,'string',num2st r(Pd)); %显示设计功率的值set(handl es.n1,'st ring',get(handl es.n,'string'));%显示带轮转速的值set(handl es.tip,'string','请根据设计功率Pd和带轮转速n,通过普通V带选型图选择V带带型','Fontsize',12);axis(handl es.axes1);I=imread('普通V带选型图.png');imshow(I);%显示V带选型图function TYPE_Callback(hObject, eventdata, handl es)gl obal typetype1 = get(hObject,'Value');TypeStr = get(hObject, 'string');type = TypeStr(type1);%工作机类型switch(type1)case 1 %Y型带的小带轮直径set(handl es.DD1,'String',[20 28 35.5 40]);case 2 %Z型带的小带轮直径set(handl es.DD1,'String',[50 63 71 80]);case 3 %A型带的小带轮直径set(handl es.DD1,'String',[75 90 100 125]);case 4 %B型带的小带轮直径set(handl es.DD1,'String',[125 140 160 180]);case 5 %C型带的小带轮直径set(handl es.DD1,'String',[200 250 315 400]);case 6 %D型带的小带轮直径set(handl es.DD1,'String',[355 400 450 500]);otherwise %E型带的小带轮直径set(handl es.DD1,'String',[500 560 630 710]);endfunction TIME_Callback(hObject, eventdata, handl es)TIME = get(hObject,'Value'); %一天的工作时间(h)function YDJ_Callback(hObject, eventdat a, handl es)YDJ = get(hObject,'Value'); %原动机类型function sure2_Callback(hObject, eventdata, handl es)set(handl es.tip,'String','请设置原动机参数','Fontsize',12);function sure1_Callback(hObject, eventdata, handl es)set(handl es.tip,'String','请设置工作机参数','Fontsize',12);function sure4_Callback(hObject, eventdata, handl es)%% 确定键后边运行的代码gl obal VMAX d d1 i d d2 v m nm = get(handl es.TYPE,'Value');n = get(handl es.DD1,'Value');if (m == 6) || (m == 7)VMAX = 30;elseVMAX = 25;endall_d d1 = str2num(get(handl es.DD1,'string'));d d1 = all_d d1(n);%小带轮直径v = pi*d d1*str2d oubl e(get(handl es.n1,'st ring'))/(60*1000);%带的速度if (v<VMAX)d d2 = i * d d1; %计算的大带轮直径str1 = {'请合理选择大带轮直径','小带轮直径:d d1 =' num2str(d d1),'理论大带轮直径:d d2 =' num2str(d d2)};set(handl es.tip,'String',st r1);elseerrordlg('减小直径','错误');endrd2 = [20; 28; 31.5; 35.5; 40; 45; 50;56; 63; 71; 80; 90; 100; 112; 125;140; 150; 160; 180; 200; 224; 250;280; 315; 355; 400; 425; 450; 500;560; 600; 630; 710; 800];%标准供选择的大带轮直径set(handl es.DD2,'string',rd2);%% 代码function sure5_Callback(hObject, eventdata, handl es)gl obal d d1 d d2 rd d2 m i n1 Pd n v Ld z a0 B F0 FQ Kl KP0rd d2_ind ex = get(handl es.DD2,'val ue');all_rd d2 = get(handl es.DD2,'string');b =str2num(all_rd d2);rd d2 = b(rd d2_ind ex);%大带轮直径flag = 1;if (abs(rd d2/d d2-1)< 0.05) %传动比误差不小于5,否则弹出出错对话框a1 = 0.7*(d d1 + d d2);a2 = 2*(d d1 + d d2);set(handl es.tip,'string',{'初估中心距a0范围', [num2str(a1) ' <= ' 'a0' '<=' num2st r(a2)]},'fontsize',12);elseerrordlg('传动比误差不小于5%,请重新选择','错误');flag = 0;a1 = 0.7*(d d1 + d d2);a2 = 2*(d d1 + d d2);endif (flag ==1)%弹出输入初估的中心距a0,计算带的基准长度Ld0;再查表确定Lda0= inputdlg([ num2str(a1) '<=' 'a0' '<=' num2str(a2)],'请输入初估计的中心距a0');a0 = str2num(a0{1});%初估计的中心距a0Ld0 = 2*a0 + pi/2*(d d1 + rd d2) + (rd d2 - d d1).^2 / (4*a0);%计算的V带基准长度Ld1 = [200,224,250,280,315,355,400,450,500,560,630,710,800,900,1000,...1120,1250,1400,1600,1800,2000,2240,2500,2800,3150,3550,4000,4500,5000];%V带基准长度数据[~, id ex] = min(abs((Ld1-Ld0)));Ld = Ld1(id ex);%V带基准长度KL = Kl(id ex,m+1); %基准长度系数a = a0 + (Ld - Ld0) / 2; %实际中心距aALF1 = 180 - (d d2 - d d1) / a*57.3;%包角KALF = [90 100 110 120 130 140 150 160 170 180 190 200 210 220;...0.68 0.73 0.78 0.82 0.86 0.89 0.92 0.95 0.98 1 1.05 1.1 1.15 1.2];[~, id ex2] = min(abs(KALF(1,:)-ALF1));Kalf = KALF(2,id ex2);%包角系数KB = [1 0.2925*1e-3 0.7725*1e-3 1.9875*1e-3 5.625*1e-3 19.95*1e-3 37.35*1e-3];Kb = KB(m);%弯曲影响系数Ki1 = [1 1.0136 1.0276 1.0419 1.0567 1.0719 1.0875 1.1036 1.1202 1.1373];if (i>=2)flag = 10;elseif(i>=1.52)flag = 9;elseif (i>=1.35)flag = 8;elseif(i>=1.25)flag = 7;elseif (i>=1.19)flag = 6;elseif(i>=1.13)flag = 5;elseif (i>=1.09)flag = 4;elseif(i>=1.05)flag = 3;elseif (i>=1.02)flag = 2;elseflag =1;endKi = Ki1(flag);%传动比系数DIFP0 = Kb*n1*(1-1/Ki);%功率增量HKP0 = [100 200 400 700 800 950 1200 1450 1600 2000 2400 2800 3200 3600 4000 4500 5000 5500 6000];[~, IDEX] = min(abs(HKP0-n1));P0 = KP0((m-1)*4+n+1,IDEX+1);%实际功率z1 = Pd/((DIFP0+P0)*KL*Kalf); %实际计算带的根数z = ceil(z1); %对带的根数向上取整e = [8 12 15 19 25.5 37 44.5]; %普通V带轮槽剖面尺寸e数据f = [7 8 10 12.5 17 23 29]; %普通V带轮槽剖面尺寸f数据B=(z-1)*e(m)+2*f(m); %普通V带轮缘宽度M1 = [0.02 0.06 0.1 0.17 0.3 0.6 0.9];%普通V单位质量数据M = M1(m); %V带单位质量if (z <10)F0 = 500*Pd/(z*v*Kalf)*(2.5-Kalf) +M*v.^2;%初拉力FQ = 2*z*F0*sin( ALF1/360*pi);%轴压力elseerrordlg('带轮的根数不小于10')sure3_Callback(hObject, eventdat a, handl es);endendfunction jsjg_Callback(hObject, eventdata, handl es)gl obal type Ld z a0 d d1 rd d2 B F0 FQ rawraw = [raw;[type Ld z a0 d d1 rdd2 B F0 FQ]];set(handl es.uitabl e4,'data',raw); %计算结果显示按钮function nextd_Callback(hObject, eventdata, handl es)helpdlg('请重新选择带轮直径','计算下一直径带轮')set(handl es.tip,'string','请重新选择带轮直径');sure4_Callback(hObject, eventdata, handl es);function nextv_Callback(hObject, eventdata, handl es)helpdl g('请重新选择下一型号带','计算下一型号带')set(handl es.tip,'string','请重新选择型号带');sure3_Callback(hObject, eventdata, handl es)function qcjg_Callback(hObject, eventdat a, handl es)gl obal rawraw = [];set(handl es.uitabl e4,'Data',raw); %清空按钮function cl ose_Callback(hObject, eventdat a, handl es)cl osereq; %关闭按钮。
V带轮工艺分析及数控加工编程秦皇岛职业技术学院机电工程系机械制造与自动化专业毕业设计,论文,任务书1设计,论文,题目: V带轮零件的工艺设计与夹具设计2毕业设计,论文,时间安排:自 2011 年 1月 9 日开始~至 2011 年 6 月 17 日结束。
毕业设计,论文,的主要内容:零件产量为10万件/年。
1、确定生产类型~对零件进行工艺分析。
2、拟订零件的机械加工工艺过程~选择各工序的加工设备及工艺装备,刀具~夹具~量具~辅具,~确定各工序切削用量及尺寸。
3、填写工艺文件:工艺过程卡~工序卡。
4、设计指定工序的专用夹具~绘制装配总图和主要零件图。
5、撰写夹具设计说明书~进行夹具设计指导教师,签名,学生,签名,V带轮工艺分析及数控加工编程秦皇岛职业技术学院机电工程系毕业设计开题报告课题名称: V带轮工艺分析及数控加工编程学生姓名: 梁海涛专业名称: 机械制造与自动化班级: 3080202 学号: 20083020208 指导教师: 肖心萍机电工程系2011年 1月 9日2页V带轮工艺分析及数控加工编程一、课题的目的及研究意义进行顶针V带轮的加工工艺分析及数控加工编程可以让我们进一步掌握机械制造工艺学及数控加工工艺学。
毕业设计是我们在校期间最后一次知识的全面检验,是对我们进行一次机械设计基本功的训练,培养我们综合运用所学知识独立地分析问题和解决问题的能力,为以后的工作打下良好基础;是对我们基本知识、基本理论和基本技能掌握与提高程度的一次总测试,能够把这三年所学做一个总结,并使其融会贯通,是全面综合运用本课程及其他相关课程的理论和时间知识进行加工工艺设计的一次重要实践。
其目的在于:1、培养学生综合运用机械制造工艺学及其相关专业(机械设计、互换性与测量技术、金属切削加工及设备等)的理论知识,结合生产实践中学到知识,独立分析和解决工艺问题初步具备设计一个中等难度零件的工艺规程的能力。
2、培养学生熟悉并运用有关手册、规范、图表等技术资料的能力。
设计说明书——普通V带传动CAD系别:机械设计制造及其自动化姓名:蒋延达学号:H100811204班级:1008101时间:2012。
11。
1指导教师:宋宝玉一:普通V带传动设计内容和任务1、普通V带传动设计内容给定原始数据:传递的功率P,小带轮转速n,传动比i及工作条件.设计内容:带型号,基准长度Ld,根数Z,传动中心距a,带轮基准直径dd1、dd2,带轮轮缘宽度B,初拉力F0,和压轴力Q。
2、CAD任务:(1)编制V带传动设计程序框图。
(2)编制V带传动设计原程序.(3)按习题或作业中数据运行程序,要求对每一组数据各按三种V带型号计算,对每一种带型号选三种小带轮直径进行计算并输出所有结果。
二、变量标识符//请勿将本程序用于其他用途//在未经设计者允许请勿转载、复制等侵权行为//这个程序凝聚了设计者的巨大心血请尊重劳动者的成果//设计者蒋延达H100811204//时间2012。
11.1 22:50 哈尔滨工业大学A02公寓#include〈stdio。
h>#include〈math.h>#include〈stdlib.h〉#include<ctype.h〉#include ”process。
h"#define Pi 3.1415926double P,Pd,KA,n1,aMIN,aMAX,V,a,Ld0,ALF1,z,P0,DIFP0,Kb,Ki,KL,KALF,F0,FQ,j,c,m0;char TYPE,q;int Ld,dd1,dd20,dd2,i,reply;char A,B,C,D,E,Y,Z;main(){printf("设计者蒋延达\n");printf(”以下用到的表均取自《机械设计》第五版,宋宝玉,王黎钦,著,高等教育出版社2009年;\n”);printf(”V带的型号选用Z,A,B,C,D,E六种可选带型;\n");printf("请输入额定功率P(kW):”);scanf("%lf”,&P);//名义功率printf("请输入转速n1(r/min):”);scanf(”%lf",&n1);//小带轮转速printf(”请查表5。
#include<iostream.h>#include <math.h>#include <stdio.h>#include<iomanip>#include<fstream>using namespace std;#define pi 3.1415926int x,y,i,j,a,z,e,t;//z为v带的条数m,n,double c1,c2,a0,a1,lc,lj,l,b,amin,amax;int n1,n2;//n1为小带轮的速度,n2为大带轮的速度int lh;//lh为电动机工作时间double k,v,u,ka,al,kl;//k为工作情况系数,v为V带的速度,u为传动比,ka为包角系数,al为包角double p,pc,p1,p0;//p为电动机的功率,pc为计算功率,p1为单根普通V带所能传递的功率,p0为单根普通V带传动功率的增量double d1,d2;//d1,d2分别为大小带轮的直径int g;//g表示工作机的工作状况:g=1,2,3,4分别表示稳,变动小,变动大,变动很大double cc[5];//数组cc里的各元素依次表示Z,A,B,C,D,E型电动机边界线的C值double f0,q;//f0为V带的张紧力,q为V带作用在轴上的压轴力int s;//s=1表示为第一类原动机,s=2表示为第二类原动机static double aa[6][17]={{0,0.00039,0.06,0.246,7.44,4.41e-5,0.72,0.00043,9.8e-08,435,50,63,71,80,90,1,13},{0,0.00103,0.1,0.449,19.62,7.65e-5,0.68,0.000225,2.25e-08,100,75,90,100,112,125,5,18}, {0,0.00265,0.17,0.794,50.6,1.31e-4,0.68,0.000174,1.94e-08,27,125,140,150,170,180,8,24}, {0,0.0075,0.3,1.48,143.2,2.43e-4,0.70,0.00964,4.48e-7,7.2,200,224,236,265,280,14,29}, {0,0.0266,0.62,3.15,507.3,4.77e-4,0.78,3.38e-5,0,0.92,355,400,425,475,500,18,32},{0,0.0498,0.9,4.57,951.5,7.06e-4,0.706,4.95e-5,1.254e-9,0,500,560,630,800,900,22,33}}; static char bb[6]={'Z','A','B','C','D','E'};static int ll[34]={0,400,450,500,560,630,710,800,900,1000,1120,1250,1400,1600,1800,2000,2240,2500,2800,3150,3550,4000,4500,5000,5600,6300,7100,8000,9000,10000,11200,12500,14000,16000};//*********P1,P2为功率增量矩阵********double P1[6][11]={{0.01,0.01,0.01,0.02,0.02,0.02,0.02,0.03,0.03,0.04,0.04},{0.01,0.02,0.02,0.02,0.03,0.03,0.03,0.04,0.04,0.04,0.05},{0.04,0.07,0.08,0.08,0.11,0.13,0.15,0.19,0.23,0.26,0.30},{0.05,0.09,0.10,0.11,0.15,0.17,0.19,0.24,0.29,0.34,0.39},{0.10,0.17,0.20,0.23,0.30,0.36,0.39,0.49,0.59,0.69,0.79},{0.13,0.22,0.25,0.30,0.38,0.46,0.51,0.63,0.76,0.89,1.01}};double P2[6][11]={{0.14,0.21,0.27,0.34,0.41,0.48,0.55,0.65,0.82,0.99,1.10},{0.18,0.26,0.35,0.44,0.53,0.62,0.71,0.83,1.06,1.27,1.41},{0.49,0.73,0.97,1.22,1.46,1.70,1.95,2.31,2.92,3.52,3.89},{0.63,0.94,1.25,1.56,1.88,2.19,2.50,2.97,3.75,4.53,5.00},{0.96,1.45,1.93,2.41,2.89,3.38,3.86,4.58,5.61,6.83},{1.24,1.86,2.48,3.10,3.72,4.34,4.96,5.89,7.21,8.78}};void gkxs(){if(s==1){ if(lh>=16) k=1.2;else if(lh<=16&&lh>=10) k=1.1;else k=1.0;switch(g){case 1:k=k;break;case 2:k=k+0.1;break;case 3:k=k+0.2;break;case 4:k=k+0.3;break;default:;}}else if(s==2){if(lh>=16) k=1.3;else if(lh<=16&&lh>=10) k=1.2;else k=1.1;switch(g){case 1:k=k;break;case 2:k=k+0.1;break;case 3:k=k+0.3;break;case 4:{if(lh>=16)k=k+0.5;else k=k+0.4;};break;default:;}}}void glzl(int n01,int n02,int n03,int n04,int n05,int n06,int n07,int n08,int n09,int n010,int n011) {int n11,n12,n13,n14,n15,n16,n17,n18,n19,n110,n111;n11=n01;n12=n02;n13=n03;n14=n04;n15=n05;n16=n06;n17=n07;n18=n08;n19=n09;n111=n011;if(n1==n11){t=0;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5; }if(n1==n12){t=1;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5; };if(n1==n13){t=2;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5; };if(n1==n14){t=3;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5; };if(n1==n15){t=4;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5; };if(n1==n16){t=5;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5; };{t=6;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5;};if(n1==n18){t=7;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5;};if(n1==n19){ t=8;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5;};if(n1==n110){t=9;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5;};if(n1==n111){t=10;if(bb[i]=='Z'||bb[i]=='C') e=(u>=1.35&&u<=1.51)?0:1;else if(bb[i]=='A'||bb[i]=='D') e=(u>=1.35&&u<=1.51)?2:3;else if(bb[i]=='B'||bb[i]=='E') e=(u>=1.35&&u<=1.51)?4:5;};}double bjxs(){int af[12]={70,80,90,100,110,120,130,140,150,160,170,180};double KA[12]={0.58,0.64,0.69,0.74,0.78,0.82,0.86,0.89,0.92,0.95,0.98,1.00};int n=0;if (al<70) ka=0.58;else if (al>=180) ka=1.00;elsefor (n=1;n<=11;n++){if (al<=af[n]) n=n-1;ka=(al-af[n])*(KA[n+1]-KA[n])/(af[n+1]-af[n])+KA[n];break;}//ka=(double)(al-af[n+1])/(af[n]-af[n+1])*KA[n]+(double)(al-af[n])/(af[n+1]-af[n])*KA[n+1];return ka;}void main(){ printf("请输入已知数据:功率p(Kw),小轮转速n1(r/min),传动比u(若已知n2,则u=0),大轮转速n2(r/min):\n");cin>>p>>n1>>u>>n2;cout<<"功率为:p="<<p<<"kw"<<",小轮转速为:n1="<<n1<<"r/min"<<",大轮转速为:n2="<<n2<<"r/min"<<endl;cout<<"请输入已知系数:工作系数g,工作机系数s:"<<endl;cin>>s>>g;gkxs();pc=k*p;cout<<"工作情况为:";if(g=0) cout<<"平稳";else if(g=1) cout<<"变动小\n";else if(g=2) cout<<"变动大\n";else if(g=3) cout<<"变动很大\n";if(s=1)cout<<"工作机为:"<<"I类工作机\n";else if(s=2)cout<<"工作机为:"<<"为II类工作机\n";cout<<"请输入已知数据:工作班制系数lh,lh<=10为单班制,lh>10&&lh<=16为两班制,lh>16为三班制"<<endl;cin>>lh;cout<<"工作班制为:";if(lh<=10) cout<<"单班制"<<endl;else if(lh>10&&lh<=16) cout<<"两班制"<<endl;else if(lh>16) cout<<"三班制"<<endl;cout<<"请输入已知数据:给定中心距a(mm)(若未给定,则a=0),中心距系数a0(0.7~2,若已知a,则a0=0)"<<endl;cin>>a>>a0;cout<<"给定初始中心距为:"<<a<<endl;if(n2!=0) u=floor((double)n1/n2*1000+0.5)/1000;ofstream outfile("V带传动设计.xls",ios::out);//输出.xls格式的文件if(!outfile){cerr<<"open error!"<<endl;exit(1);}outfile<<"V带传动设计结果"<<endl;outfile<<"V带型号"<<"\t"<<"带长ld"<<"\t"<<"根数z"<<"\t"<<"小轮直径d1"<<"\t"<<"大轮直径d2"<<"\t"<<"带速v"<<"\t"<<"传动比u"<<"\t"<<"中心距a1"<<"\t"<<"最小中心距amin"<<"\t"<<"最大中心距amax"<<"\t"<<"初拉力f0"<<"\t"<<"压轴力q"<<endl;cc[0]=log10(365)+(log10(2510)-log10(365))*(log10(pc)-log10(0.8))/(log10(5)-log10(0.8));cc[1]=log10(100)+(log10(1500)-log10(100))*(log10(pc)-log10(1))/(log10(10)-log10(1));cc[2]=log10(100)+(log10(870)-log10(100))*(log10(pc)-log10(3.15))/(log10(18)-log10(3.15));cc[3]=log10(100)+(log10(700)-log10(100))*(log10(pc)-log10(9))/(log10(40)-log10(9));cc[4]=log10(100)+(log10(500)-log10(100))*(log10(pc)-log10(50))/(log10(200)-log10(50));for(i=0;i<=4;i++){if(n1>=pow(10,cc[i])) break;}if(i==0) {x=0;y=1;} //插值法else if(n1<=pow(10,cc[4])) {x=4;y=5;}else {x=i-1;y=i+1;}for(i=x;i<=y;i++)for(j=10;j<=14;j++){v=floor(pi*aa[i][j]*n1/600+0.5)/100;if(v>=5 && v<=20)//速度限制{d2=floor(u*aa[i][j]*0.98/5+0.5)*5;u=floor(d2/aa[i][j]/0.98*100+0.5)/100;c1=d2+aa[i][j];c2=d2-aa[i][j];if(a==0) a1=a0*c1;else a1=a;lc=2*a1+pi*c1/2+c2*c2/4/a1;for(int m=int(aa[i][15]);m<=int(aa[i][16]);m++){if(lc<=ll[m]) break;}lj=(ll[m]+ll[m-1])/2;if(lc<lj) l=ll[m-1];else l=ll[m];b=2*l-pi*c1;a1=floor((b+pow(b*b-8*c2*c2,0.5))/8*10+0.5)/10;amin=floor(a1-0.015*l+0.5);amax=floor(a1+0.03*l+0.5);al=180-c2/a1*57.3;if(al>=120){ ka=bjxs();kl=aa[i][6]+aa[i][7]*l-aa[i][8]*l*l;p0=(aa[i][3]*pow(v,-0.09)-aa[i][4]/aa[i][j]-aa[i][5]*v*v)*v;if(bb[i]=='Z'||bb[i]=='A'||bb[i]=='B'){glzl(400,730,800,980,1200,1460,1600,2000,2400,2800,3200);p1=P1[e][t];}else if(bb[i]=='C'||bb[i]=='D'||bb[i]=='E'){glzl(200,300,400,500,600,730,800,980,1200,1460,1600);p1=P2[e][t];}z=int(floor(pc/((p0+p1)*kl*ka)+0.95));if(z<=9){f0=floor((500*pc*(2.5/ka-1))/v/z+aa[i][2]*v*v+0.5);q=floor(2*z*f0*sin(al*pi/180/2)+0.5);cout<<"设计结果为:"<<endl;cout<<"工作情况系数为:k="<<k<<endl;cout<<"计算功率为:pc="<<pc<<endl;cout<<"V带型号为:"<<bb[i]<<"型"<<endl;cout<<"V带根数为:z="<<z<<endl;cout<<"V带长度为:ld="<<l<<endl;cout<<"小轮直径为:d1="<<aa[i][j]<<endl;cout<<"小轮直径为:d2="<<d2<<endl;cout<<"带速为:v="<<v<<endl;cout<<"传动比为:u="<<u<<endl;cout<<"中心距为:a1="<<a1<<endl;cout<<"最小中心距为:a="<<amin<<endl;cout<<"最大中心距为:a="<<amax<<endl;cout<<"初拉力为:f0="<<f0<<endl;cout<<"压轴力为:q="<<q<<endl;printf("***********pass!***************\n");outfile<<bb[i]<<"型"<<"\t"<<l<<"\t"<<z<<"\t"<<d1<<"\t"<<d2<<"\t"<<v<<"\t"<<u<<"\t"<<a1<<"\t"<<amin<<"\t"<<a max<<"\t"<<f0<<"\t"<<q<<endl;}}}if(v>=20) break;}cout<<"具体看里面的excel文件!"<<endl;}。
带传动设计程序流程图
B
注:1)输出结果包括选择带的型号、确定基准长度、根数、中心距、带轮的基
准直径以及结构尺寸;
2)V带类型只包括普通V带。
计算机语言的实现:
对于该设计程序,可以用Visual Basic语言来实现。
VB语言中的可视界面,对程序的进展过程以及对数据的操作带来更加方便,而且可视界面带给造作者更加直观的效果。
首先,打开程序,输入原始数据,单击“下一步”,直接输出功率P ca,再单击界面控件,弹出普通V带选型图,对照计算所得功率P ca以及小带轮转速,选择普通V带类型。
对于后面所涉及的临时数据,都可以在编程中根据书本上所给出的计算公式,单击“下一步”计算所得,并在相应数据栏输出。
程序中所涉及的循环环节,可以手动单击控件“返回”进行二次选择;程序中所要查找的数据、图表都可以在界面上单击提示的控件来展开所查看图表或者查找所需数据。
对于该程序进一步改进,就是引进数据库,对每一种带型编上一个代码,通过输入原始数据:带传动的工作条件;传动位置与总体尺寸限制;所需传递的额定功率P;小带轮转速n1;大带轮转速n2或传动比i。
单击“输出”按键,直接输出计算机所分析得出的结果:带的型号、确定基准长度、根数、中心距、带轮的基准直径以及结构尺寸;。
#include<stdio.h>#include<math.h>#include<stdlib.h>#define PI 3.14159//int ; //其它参数float KA,P0,P0_1,Kb,Ki,Kl,Kv; //,P0_1为传递功增量float b1,bp,h,q;float Pc,N1,N2,Centerdistance,SmallpulleysAngle,F0,V,flag_a,flag_b,flag_c; //Pc为功率,N1为主动轮转速,N2为从动轮转速,Small pulleys Angle为小带轮包角,Z传动带根数,F0为初拉力//Kv为包角系数float pressure_Q,transmissionratio,Z_1; //pressure_Q轴上压力,transmissionratio为传动比int TYPE,D1,D2,Ld,Z,ch1;//TYPE为V带的类型,D1为主动轮基准直径,D2为从动轮直径,//V为带速,Ld为基准长度,Centerdistance为中心距float KA_softstart[4][3]={{1.0,1.1,1.2},{1.1,1.2,1.3},{1.2,1.3,1.4},{1.3,1.4,1.5}}, //工作情况系数KA 软起动时KAKA_loadstart[4][3]={{1.1,1.2,1.3},{1.2,1.3,1.4},{1.4,1.5,1.6},{1.5,1.6,1.8}};//负载起动时KAvoid CHOOSE_KA();void CHOOSE_type();void CHOOSE_gaugediameter();void LengthandCenterdistance();void Beltingthenumber();void initialtension();void Axispressure();void display();void explain();void otherparameters_dis();int Forclosetothenumber(int min,int max,int z);/************************************主函数*****************************************/void main(){int goon;do{explain();CHOOSE_KA();CHOOSE_type();CHOOSE_gaugediameter();LengthandCenterdistance();Beltingthenumber();initialtension();Axispressure();display();scanf("%d",&goon);//if(goon!=1)//break;}while(goon==1);}/******************************* 1.确定计算功率Pc ********************************************/void CHOOSE_KA(){int workingcondition,start_flag;float dayhour,nominalpower;printf("载荷变动选择:\n");printf("\n");printf("1.载荷变动微小:液体搅拌机;通风和鼓风机(<=7.5KW);离心式水泵和压缩机;轻型输送机。
机械设计作业普通V带传动设计图1运行界面图2设计结果界面Option Explicit '数据库定义Const DBname As String = "V带传动计算.mdb"Dim strPath As StringDim db As DatabaseDim rs1 As RecordsetDim rs2 As RecordsetDim rs3 As RecordsetDim rs4 As RecordsetDim strSQL As StringPrivate Sub Command1_Click()Dim ka As Single '工作情况系数Dim kl As Single '带长修正系数Dim pc As Single '计算功率pcDim n1 As Single '主动轮转速Dim n2 As Single '从动轮转速Dim t As Single '数据库中间变量Dim h As Single '数据库中间变量Dim h1 As Single '数据库中间变量Dim h2 As Single '数据库中间变量Dim h3 As Single '数据库中间变量Dim h4 As Single '数据库中间变量Dim h5 As Single 'kr中间变量Dim h6 As Single '普通v带的基本额定功率p0 Dim h7 As Single '额定功率的增量Δp0Dim h8% '带的根数Dim d1% '带的小轮直径Dim d2% '带的大轮直径Dim i% '循环中间变量Dim j% '循环中间变量Dim A1 ' 数组Dim A2Dim A3Dim A4Dim A5Dim A6Dim B1Dim v As Single '带速Dim s As Single '中间变量Dim a0 As Single '计算中心距Dim a As Integer '标准中心距Dim arf As Single '包角αDim L0 As Single '带长度Dim Ld As Single '带的基准长度Dim bj As Single '包角If Combo1.ListIndex = 0 Then '电动机(交流启动,三角启动,直流并励),四缸以上的内燃机ka = 1 + 0.1 * Combo1.ListIndex + 0.1 * Combo2.ListIndex + 0.1 * Combo3.ListIndexEnd IfIf Combo1.ListIndex = 1 Then '电动机(联机交流启动,直流复励启动),四缸以上的内燃机If Combo2.ListIndex <= 1 Then '负载变动不大ka = 1 + 0.1 * Combo1.ListIndex + 0.1 * Combo2.ListIndex + 0.1 * Combo3.ListIndexElseIf Combo3.ListIndex <= 1 Then '每天工作时间小于十六小时ka = 1.1 + 0.1 * Combo1.ListIndex + 0.1 * Combo2.ListIndex + 0.1 * Combo3.ListIndexElseka = 1.2 + 0.1 * Combo1.ListIndex + 0.1 * Combo2.ListIndex + 0.1 * Combo3.ListIndexEnd IfEnd IfEnd If 'ka计算出pc = ka * Text1.Text '求出pcn1 = Text2.Textn2 = Text3.Text '带的选型和小轮(主动轮)的确定,带型号函数是由双对数坐标系算出If n1 > (10 ^ 2.89975) * (pc ^ 0.9659) ThenText4.Text = "推荐选Z带"A1 = Array(50, 56, 63, 71)For i = 0 To 3v = 3.145926 * A1(i) * n1 / 60000If v > 5 And v < 25 Then '要求速度在大于5m/s小于25m/s d1 = A1(i)Exit ForEnd IfNextEnd IfIf n1 < (10 ^ 2.89975) * (pc ^ 0.9659) And n1 > (10 ^ 2.7228) * (pc ^ 0.9659) ThenText4.Text = "推荐选Z带"A1 = Array(80, 90)For i = 0 To 1v = 3.145926 * A1(i) * n1 / 60000If v > 5 And v < 25 Thend1 = A1(i)Exit ForEnd IfEnd IfIf n1 < (10 ^ 2.7228) * (pc ^ 0.9659) And n1 >= (10 ^ 2.2286) * (pc ^ 1.1477) Then Text4.Text = "推荐选A带"A2 = Array(90, 100)For i = 0 To 1v = 3.145926 * A2(i) * n1 / 60000If v > 5 And v < 25 Thend1 = A2(i)Exit ForEnd IfNextEnd IfIf n1 < (10 ^ 2.2286) * (pc ^ 1.1477) And n1 > (10 ^ 2.13101) * (pc ^ 0.9659) Then Text4.Text = "推荐选A带"A2 = Array(112, 125, 140, 160, 180)For i = 0 To 4v = 3.145926 * A2(i) * n1 / 60000If v > 5 And v < 25 Thend1 = A2(i)Exit ForEnd IfNextEnd IfIf n1 <= (10 ^ 2.13101) * (pc ^ 0.9659) And n1 >= (10 ^ 1.7758) * (pc ^ 1.03366) Then Text4.Text = "推荐选B带"A3 = Array(125, 140)For i = 0 To 1v = 3.145926 * A3(i) * n1 / 60000If v > 5 And v < 25 Thend1 = A3(i)Exit ForEnd IfNextEnd IfIf n1 < (10 ^ 1.7758) * (pc ^ 1.03366) And n1 >= (10 ^ 1.46891) * (pc ^ 1.16112) Then Text4.Text = "推荐选B带"A3 = Array(160, 180, 200, 224, 250, 280)For i = 0 To 5v = 3.145926 * A3(i) * n1 / 60000If v > 5 And v < 25 Thend1 = A3(i)End IfNextEnd IfIf n1 < (10 ^ 1.46891) * (pc ^ 1.16112) And n1 >= (10 ^ 0.89902) * (pc ^ 1.21825) ThenText4.Text = "推荐选C带"A4 = Array(200, 224, 250, 280, 315, 355, 400, 450)For i = 0 To 7v = 3.145926 * A4(i) * n1 / 60000If v > 5 And v < 25 Thend1 = A4(i)Exit ForEnd IfNextEnd IfIf n1 < (10 ^ 0.89902) * (pc ^ 1.21825) And n1 >= (10 ^ -0.24592) * (pc ^ 1.32193) ThenText4.Text = "推荐选D带"End IfIf n1 < (10 ^ -0.24592) * (pc ^ 1.32193) ThenText4.Text = "推荐选E带"End If '小轮直径d1求出,并圆整到标准尺寸s = (1 - 0.02) * d1 * n1 / n2B1 = Array(50, 56, 63, 71, 75, 80, 85, 90, 95, 100, 106, 112, 118, 125, 132, 140, 150, 160, 170, 180, 200, 212, 224, 236, 250, 265, 280, 300, 315, 355, 375, 400, 425, 450, 475, 500, 530, 560, 600, 630, 670, 710, 750, 800, 900, 1000)For j = 0 To 45If s < B1(j) Thens = B1(j)d2 = sExit ForEnd IfNext ' 大轮直径求出并圆整到标准尺寸Label10.Caption = d1 & "mm"Label11.Caption = d2 & "mm"If d1 = 0 Or d2 = 0 ThenMsgBox "参数不合适请重新设计"End Ifa0 = 1.5 * (d1 + d2)L0 = 2 * a0 + 3.1415926 * (d1 + d2) / 2 + 0.25 * (d2 - d1) ^ 2 / a0Set rs4 = db.OpenRecordset("ldyukl")Do While Not rs4.EOFt = rs4.Fields(0).ValueIf t > L0 ThenLd = tExit DoEnd Ifrs4.MoveNextLooprs4.Close' L0算出Text5.Text = "带长度为" & Lda = a0 + (Ld - L0) / 2'验算包角arf = 180 - (d2 - d1) / 2If arf > 90 ThenElseMsgBox "包角太小,参数不合理重新设计"End If '包角α求出'选择klstrSQL = "SELECT z,a,b,c FROM ldyukl " '数据库调用strSQL = strSQL & "WHERE JZchangdu = " & LdSet rs4 = db.OpenRecordset(strSQL)If Text4.Text = "推荐选z带" Thenh = rs4.Fields(0).Valuekl = hEnd IfIf Text4.Text = "推荐选A带" Thenh1 = rs4.Fields(1).Valuekl = h1' kl算出End IfIf Text4.Text = "推荐选B带" Thenh2 = rs4.Fields(2).Valuekl = h2End IfIf Text4.Text = "推荐选C带" Thenh3 = rs4.Fields(3).Valuekl = h3End If'求带根数zSet rs1 = db.OpenRecordset("baojiaokr") '数据库查询krDo While Not rs1.EOFh4 = rs1.Fields(0).ValueIf arf > h4 Thenbj = h4Exit DoEnd Ifrs1.MoveNextLooprs1.ClosePrint ; bj & "bj"strSQL = "SELECT baojiao,kr FROM baojiaokr "strSQL = strSQL & "WHERE baojiao = " & bjSet rs1 = db.OpenRecordset(strSQL)h5 = rs1.Fields(1).Value' "h5=kr求出A5 = Array(200, 400, 800, 950, 1200, 1450, 1600, 1800, 2000, 2400, 2800, 3200, 3600, 4000, 5000, 6000) For i = 0 To 15If n1 < A5(i) Thenn1 = A5(i)Exit ForEnd IfNextIf Text4.Text = "推荐选Z带" ThenstrSQL = "SELECT " & " [" & n1 & "],xinghao, xiaozhijing FROM EDinggonglv " strSQL = strSQL & "WHERE xinghao= 'z' AND xiaozhijing=" & d1Set rs2 = db.OpenRecordset(strSQL)h6 = rs2.Fields(0).ValueEnd IfIf Text4.Text = "推荐选A带" ThenstrSQL = "SELECT " & " [" & n1 & "],xinghao, xiaozhijing FROM EDinggonglv " strSQL = strSQL & "WHERE xinghao= 'a' AND xiaozhijing=" & d1Set rs2 = db.OpenRecordset(strSQL)h6 = rs2.Fields(0).ValueEnd IfIf Text4.Text = "推荐选B带" ThenstrSQL = "SELECT " & " [" & n1 & "],xinghao, xiaozhijing FROM EDinggonglv " strSQL = strSQL & "WHERE xinghao= 'b' AND xiaozhijing=" & d1Set rs2 = db.OpenRecordset(strSQL)h6 = rs2.Fields(0).ValueEnd IfIf Text4.Text = "推荐选C带" ThenstrSQL = "SELECT " & " [" & n1 & "],xinghao, xiaozhijing FROM EDinggonglv " strSQL = strSQL & "WHERE xinghao= 'c' AND xiaozhijing=" & d1Set rs2 = db.OpenRecordset(strSQL)h6 = rs2.Fields(0).ValueEnd If'h6就是p0A6 = Array(400, 730, 800, 980, 1200, 1460, 1600, 2000)For j = 0 To 7If n1 > A6(j) Thenn1 = A6(j)End IfNextIf Text4.Text = "推荐选Z带" ThenIf n1 / n2 < 1.52 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang "strSQL = strSQL & " WHERE xinghao= 'z' AND i= " & 1.52Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfIf n1 >= 1.52 And n1 / n2 < 1.99 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang " strSQL = strSQL & " WHERE xinghao= 'z' AND i= " & 2Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfIf n1 / n2 >= 2 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang " strSQL = strSQL & " WHERE xinghao= 'z' AND i= " & 100Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfEnd IfIf Text4.Text = "推荐选A带" ThenIf n1 / n2 < 1.52 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang " strSQL = strSQL & " WHERE xinghao= 'a' AND i= " & 1.52Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfIf n1 >= 1.52 And n1 / n2 < 1.99 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang " strSQL = strSQL & " WHERE xinghao= 'a' AND i= " & 2Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfIf n1 / n2 >= 2 ThenstrSQL = "SELECT" & "[" & n1 & "],i,xinghao FROM EDzengliang " strSQL = strSQL & " WHERE xinghao= 'a' AND i = " & 100Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfEnd IfIf Text4.Text = "推荐选B带" ThenIf n1 / n2 < 1.52 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang " strSQL = strSQL & " WHERE xinghao= 'b' AND i= " & 1.52Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfIf n1 >= 1.52 And n1 / n2 < 1.99 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang "strSQL = strSQL & " WHERE xinghao= 'b' AND i= " & 2Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfIf n1 / n2 > 2 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang "strSQL = strSQL & " WHERE xinghao= 'b' AND i= " & 100Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfEnd IfIf Text4.Text = "推荐选C带" ThenIf n1 / n2 < 1.52 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang "strSQL = strSQL & " WHERE xinghao= 'c' AND i= " & 1.52Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfIf n1 >= 1.52 And n1 / n2 < 1.99 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang "strSQL = strSQL & " WHERE xinghao= 'c' AND i= " & 2Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfIf n1 / n2 >= 2 ThenstrSQL = "SELECT" & "[" & n1 & " ],i , xinghao FROM EDzengliang "strSQL = strSQL & " WHERE xinghao= 'c' AND i= " & 100Set rs3 = db.OpenRecordset(strSQL)h7 = rs3.Fields(0).ValueEnd IfEnd If' h7 ' h7就是detp0 h8 = pc / (h6 + h7)Text6.Text = "根数" & h8 ' h8 是带的根数If h8 > 10 ThenMsgBox "参数不合适带数太多请重新设计"End IfIf d1 = 0 Or d2 = 0 ThenMsgBox "参数不合适请重新设计"End IfEnd SubPrivate Sub Command2_Click()Text1.Text = ""Text2.Text = ""Text3.Text = ""Text4.Text = ""Text5.Text = ""Text6.Text = ""Label10.Caption = ""Label11.Caption = ""End SubPrivate Sub Form_Load()Combo1.AddItem "第一类电动机"Combo1.AddItem "第二类电动机"Combo2.AddItem "载荷变动很小"Combo2.AddItem "载荷变动小"Combo2.AddItem "载荷变动较大"Combo2.AddItem "载荷变动很大"Combo3.AddItem "工作<10小时"Combo3.AddItem "工作10到16小时"Combo3.AddItem "工作>16小时"strPath = App.Path & "\"Set db = OpenDatabase(strPath & DBname)Set rs1 = db.OpenRecordset("baojiaokr")Set rs2 = db.OpenRecordset("EDinggonglv")Set rs3 = db.OpenRecordset("EDzengliang")End Sub说明:设计中汉字为注释,本设计采用了数据库的调用,因数据库与课本上各表相符,所以没有打印出来。
机械设计大作业题目: V带传动设计院系:机械制造及其自动化班级: 1008XXX姓名: XXX学号: 1100800XXX目 录一.设计任务:带式运输机............................................. 3 二 选择电动机 .................................................... 4 三 确定设计功率d P ................................................ 4 四 选择带的型号 .................................................. 4 五 确定带轮的基准直径12d d d d 和 ..................................... 6 六 验算带的速度 .................................................. 6 七 确定中心距a 和V 带基准长度d L .................................. 7 八 计算小轮包角 .................................................. 8 九 确定V 带根数Z ................................................. 8 十确定初拉力0F (10)十一 计算作用在轴上的压力........................................ 11 十二 带轮结构设计.................................................. 12 十三 V 带传动的紧、安装及防护 .................................... 17 十四 参考文献.................................................... 18 十五 附表.. (19)机械设计作业任务书一.设计任务:带式运输机结构简图见下图:★原始数据及设计容:通常情况下设计V带传动时已知的原始数据有:①传递的功率P;②主动轮、从动轮的转速、;③传动的用途和工作条件;④传动的位置要求,原动机种类等。
设计V型带传动
一、设计题目及数据
机。
二、设计工作量
1.设计计算说明书。
包括选择V型带型号、材料、长度与根数;带轮直径及中心距;计算初拉力与压轴力等。
2.大带轮的零件工作图。
要求注出表面粗糙度、尺寸公差、形位公差等。
三、设计指导
带传动的设计步骤比较完整成熟,要求按教材中的顺序进行.在设计时还须注意以下问题:
1、由输入功率和转速n1选择带的型号时,若介于两种型号中间的直线区附近时可以同时选择两种型号
进行设计、比较结果(带的根数、传动的结构尺寸大小等)选择最佳方案。
2、帘布结构V型带比化纤带应用更广泛,应当优先选用。
但化纤带承载能力高,若传动尺寸要求紧凑时,可采用化纤带。
3、直径D1时,如果要求结构紧凑,应取D1= Dmin (教材表6-7);若尺寸不受限制,D1可取大些,对承载能力有利。
D1 D2按带轮直径系列圆整,其转速误差
不应大于5%。
4、中心距一般可以调整,所以可用20Lca L a a -+
≈计
算,并圆整成整数。
5、计算求出的带的根数应满足102<<z ,否则应改选型号,重新设计。
6、大带轮的轮辐部分之结构,由带轮直径D 选择。
绘制带轮工作图时注意非加工表面的圆角过渡,轮槽尺寸的标注应符合标准规定。
四、带轮零件工作图示例 见图2-1。
图2-1
V型带传动设计计算书
设计步骤公式计算结果
1 求计算功率P c K A= 1.5P c=6.0w
2 选取V带型号A型。
哈工大机械设计带传动设计电算大作业vb和c语言程序代码课程名称, 机械设计电算题目, V带传动设计院系, 机电控制学院班级, 1308102班设计者, 尤开灵学号, 1130810222 设计时间, 2015.10.17 部分变量说明(所有说明见程序部分变量定义)ka 工作情况系数 p 输入功率 kwpd 工作功率 kw i 传动比n1 输入小轮转速 r/min d1 小带轮直径 mmd2 大带轮直径 mm v 皮带速度 m/sjiao 输出包容角度 ? ff0 初拉力 Nff1 轴间力 N ld 带的长度 mmz 皮带代数根 m 质量 kg程序运行截图判断语句:包括速度判断选择小轮直径,输入数据判断小轮直径输出结果及其函数界面'运行程序程序代码Private Sub Command5_Click() '条件输入确定 Dim ka1 As Double '工作情况系数变量 Call f0Dim ka As Double '工作情况系数 Call f1Dim p As Double '输入功率 Text5.Text = n1 & "r/min" Dim pi As Double 'pi的定义 Text4.Text = pd & "kw" Dim pd As Double '工作功率 End Sub Dim i As Double '传动比 Private Sub Command2_Click() '小轮直径选择与确定 Dim n1 As Double '输入小轮转速 d1 = Val(Text7.Text) Dim d1 As Double '小带轮直径 Call f2Dim d2 As Double '大带轮直径 Call f3Dim k As Double '循环变量 Call f4Dim a() As Variant '小轮直径选择序列 End SubDim b() As Variant '皮带的长度选择序列 Private Sub Command3_Click() '中心距离输入 Dim nn() As Variant '转速的选择序列 aa = Val(Text16.Text) Dim mm() As Variant '包容修正系数列表 Call f5Dim v As Double '皮带速度 End SubDim aa As Double '输入中心距离 Private Sub Command4_Click() '计算Dim aaa As Double '输出实际中心距 Call f6Dim jiao As Double '输出包容角度 Call f7Dim ff0 As Double '初拉力 Call f8Dim ff1 As Double '轴间力 Text6.Text = d1 & "mm" Dim ld As Double '带的长度 Text9.Text = d2 & "mm" Dim shunxu As Double '基本额定功率顺序Text10.Text = z & "根"Dim shunxu1 As Double '长度顺序 Text12.Text = aaa & "mm" Dim pnum() As Variant '基本功率序列 Text11.Text = jiao & "度" Dim lxishu() As Variant 'c长度系数 Text13.Text = ff0 & "N" Dim p0 As Double '基本功率Text14.Text = ff1 & "N" Dim dp0 As Double '增加功率 End SubDim z As Double '皮带数 Private Sub Command1_Click() Dim kaa As Double '包容修正系数 EndDim kl As Double '长度系数 End SubDim ki As Double '传动比系数 Private Sub f0() '参数赋值函数 Dim kbAs Double '弯曲系数 pi = 3.14159Dim m As Double '质量 p = Val(Text1.Text)i = Val(Text2.Text)n1 = Val(Text3.Text) If dianjileixing.Text = "I类" And zaihe.Text = "a() = Array(20, 28, 31.5, 35.5, 40, 45, 50, 56, 63, 载荷变动较大" And workhour.Text = "10-16h/天" Then 71, 75, 80, 90, 100, 112, 125, 140, 150, 160, 180, ka1 = 1.3200, 224, 250, 280, 315, 355, 400, 425, 450, 500, Ifdianjileixing.Text = "I类" And zaihe.Text = "560, 600, 630, 710, 800, 0) 载荷变动较大" And workhour.Text = ">16h/天" Then b() = Array(200, 224, 250, 280, 315, 355, 400, 450, ka1 = 1.4500, 560, 630, 710, 800, 900, 1000, 1120, 1250, 1400, Ifdianjileixing.Text = "I类" And zaihe.Text = "1600, 1800, 2000, 2240, 2500, 2800, 3150, 3550, 4000, 载荷变动很大" And workhour.Text = "<10h/天" Then 4500, 5000, 0) ka1 = 1.3nn() = Array(100, 200, 400, 700, 800, 950, 1200, 1450, If dianjileixing.Text = "I类" And zaihe.Text = "1600, 2000, 2400, 2800, 3200, 3600, 4000, 4500, 5000, 载荷变动很大" And workhour.Text = "10-16h/天" Then 5500, 6000, 0) ka1 = 1.4mm() = Array(0.68, 0.73, 0.78, 0.82, 0.86, 0.89, Ifdianjileixing.Text = "I类" And zaihe.Text = "0.92, 0.95, 0.98, 1, 1.05, 1.1, 1.15, 1.2, 0) 载荷变动很大" And workhour.Text = ">16h/天" Then End Sub ka1 = 1.5Private Sub f1() '选择ka1 计算pd If dianjileixing.Text = "II类" And zaihe.Text = "If dianjileixing.Text = "I类" And zaihe.Text = "载荷平稳" And workhour.Text = "<10h/天" Then ka1 = 载荷平稳" And workhour.Text = "<10h/天" Then ka1 = 1.11 If dianjileixing.Text = "II类" And zaihe.Text = "Ifdianjileixing.Text = "I类" And zaihe.Text = "载荷平稳" Andworkhour.Text = "10-16h/天" Then ka1 载荷平稳" And workhour.Text = "10-16h/天" Then ka1 = 1.2= 1.1 If dianjileixing.Text = "II类" And zaihe.Text = "If dianjileixing.Text = "I类" And zaihe.Text = "载荷平稳" Andworkhour.Text = ">16h/天" Then ka1 = 载荷平稳" And workhour.Text =">16h/天" Then ka1 = 1.31.2 If dianjileixing.Text = "II类" And zaihe.Text = "If dianjileixing.Text = "I类" And zaihe.Text = "载荷变动小" And workhour.Text = "<10h/天" Then ka1 载荷变动小" And workhour.Text ="<10h/天" Then ka1 = 1.2= 1.1 If dianjileixing.Text = "II类" And zaihe.Text = "If dianjileixing.Text = "I类" And zaihe.Text = "载荷变动小" And workhour.Text = "10-16h/天" Then 载荷变动小" And workhour.Text = "10-16h/天" Then ka1 = 1.3ka1 = 1.2 If dianjileixing.Text = "II类" And zaihe.Text = "If dianjileixing.Text = "I类" And zaihe.Text = "载荷变动小" And workhour.Text = ">16h/天" Then ka1 载荷变动小" And workhour.Text =">16h/天" Then ka1 = 1.4= 1.3 If dianjileixing.Text = "II类" And zaihe.Text = "If dianjileixing.Text = "I类" And zaihe.Text = "载荷变动较大" And workhour.Text = "<10h/天" Then 载荷变动较大" And workhour.Text = "<10h/天" Then ka1 = 1.4ka1 = 1.2 If dianjileixing.Text = "II类" And zaihe.Text = "载荷变动较大" And workhour.Text = "10-16h/天" Then Exit Subka1 = 1.5 End IfIf dianjileixing.Text = "II类 " And zaihe.Text = "载荷变动较大" And workhour.Text = ">16h/天" Then End Subka1 = 1.6 Private Sub f3() '判断速度If dianjileixing.Text = "II类" And zaihe.Text = "v = pi * d1 * n1 / 60 / 1000 载荷变动很大" And workhour.Text = "<10h/天" Thenka1 = 1.5 If v > 20 Then If dianjileixing.Text = "II类 " And zaihe.Text = "MsgBox "小带轮直径过大~,重新输入直径" 载荷变动很大" And workhour.Text = "10-16h/天" Then Exit Subka1 = 1.6 End IfIf dianjileixing.Text = "II类" And zaihe.Text = "载荷变动很大" And workhour.Text = ">16h/天" Then If v < 5 Thenka1 = 1.8 MsgBox "小带轮直径过小~,重新输入直径" If Check1.Value = 0 Then ka = ka1 Exit SubIf Check1.Value = 1 Then ka = ka1 * 1.1 End Ifpd = p * kaEnd Sub End SubPrivate Sub f2() '计算带轮直径 Private Sub f4() '估计中心距离 d1 =Val(Text7.Text)d2 = 0 Dim aa0 As DoubleDim aa1 As Double For k = 0 To 50 Step 1If a(k) = 0 Then aa0 = 0.7 * (d1 + d2)Exit For aa1 = 2 * (d1 + d2)End If Text15.Text = aa0 & "-" & aa1If Abs((a(k) / d1 - i) / i) <= 0.05 Then End Subd2 = a(k) Private Sub f5() '确定带长和中心距和角度Exit For Dim ll As DoubleEnd If Dim c1 As DoubleDim c2 As Double Next kIf Text8.Text = "Y" Then lxishu = Array(0.81, 0.82,If d2 = 0 Then 0.84, 0.87, 0.9, 0.92, 0.96, 1, 1.02, 0, 0, 0, 0,MsgBox "小带轮直径和带型选择不合适~,重新输入0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,直径" 0, 0, 0, 0, 0, 0, 0, 0, 0)If Text8.Text = "Z" Then lxishu = Array(0, 0, 0, 0,0, 0, 0.87, 0.89, 0.91, 0.94, 0.96, 0.99, 1, 1.03, If b(k) = 0 Then1.06, 1.08, 1.1, 1.14, 1.16, 1.18, 0, 0, 0, 0, 0, Exit For0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) End IfIf Text8.Text = "A" Then lxishu = Array(0, 0, 0, 0, Next k0, 0, 0, 0, 0, 0, 0.81, 0.83, 0.85, 0.87, 0.89, 0.91,0.93, 0.96, 0.99, 1.01, 1.03, 1.06, 1.09, 1.11, 1.13, kl =lxishu(shunxu1)1.17, 1.19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) aaa = aa + (ld - ll) / 2If Text8.Text = "B" Then lxishu = Array(0, 0, 0, 0, jiao = 180 -((d2 - d1) / aaa * 57.3) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.82, 0.84, 0.86,0.88, End Sub0.9, 0.92, 0.95, 0.98, 1, 1.03, 1.05, 1.07, 1.09,1.13, 1.15, 1.18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) Private Sub f6() '确定根数If Text8.Text = "C" Then lxishu = Array(0, 0, 0, 0, Dim c1 As Double 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.83, 0.86, Dim c2 As Double0.88, 0.91, 0.93, 0.95, 0.97, 0.99, 1.02, 1.04, 1.07, c2 = 50001.09, 1.12, 1.15, 1.18, 1.21, 1.23, 0, 0, 0, 0)If Text8.Text = "D" Then lxishu = Array(0, 0, 0, 0, If Text8.Text = "Y" And Text7.Text = "20" Then pnum 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = Array(0, 0, 0, 0, 0, 0.01, 0.02, 0.02, 0.03, 0.03, 0, 0, 0.83, 0.86, 0.89, 0.91, 0.93, 0.96, 0.98, 1, 0.04, 0.04, 0.06, 0.06,0.07, 0.08, 0.09, 0.1) 1.03, 1.06, 1.08, 1.11, 1.14, 1.17, 1.2, 1.22) If Text8.Text = "Y" And Text7.Text = "28" Then pnum If Text8.Text = "E" Then lxishu = Array(0, 0, 0, 0, = Array(0, 0, 0, 0, 0.03, 0.04, 0.04,0.05, 0.05, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.06,0.07, 0.08, 0.09, 0.1, 0.11, 0.12, 0.13, 0.14, 0, 0, 0, 0, 0, 0, 0.9,0.92, 0.96, 0.97, 1, 1.02, 0.15)1.05, 1.07, 1.1, 1.12, 1.15, 1.18) If Text8.Text = "Y" AndText7.Text = "35.5" Then pnum= Array(0, 0, 0, 0.04, 0.05, 0.05, 0.06, 0.06, 0.07, ll = 2 * aa +pi / 2 * (d1 + d2) + (d1 - d2) ^ 2 / 0.08, 0.09, 0.11, 0.12, 0.13, 0.14, 0.16, 0.18, 0.19, (4 * aa) 0.2)c2 = 5000 If Text8.Text = "Y" And Text7.Text = "40" Then pnum= Array(0, 0, 0, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, For k = 0 To 100 Step 1 0.11, 0.12, 0.14, 0.15, 0.16, 0.18, 0.19, 0.2, 0.22, c1 = Abs(b(k) - ll) 0.24)If c1 < c2 Then If Text8.Text = "Z" And Text7.Text = "50" Then pnum c2 = c1 = Array(0, 0.04, 0.06, 0.09, 0.1, 0.12, 0.14, 0.16,ld = b(k) 0.17, 0.2, 0.22, 0.26, 0.28, 0.3, 0.32, 0.33, 0.34,shunxu1 = k 0.33, 0.31)End If If Text8.Text = "Z" And Text7.Text = "63" Then pnum= Array(0, 0.05, 0.08, 0.13, 0.15, 0.18, 0.22, 0.25, If Text8.Text = "B" And Text7.Text = "180" Then pnum 0.27, 0.32, 0.37, 0.41, 0.45, 0.47, 0.49, 0.5, 0.5, = Array(0, 0.88, 1.59, 2.53, 2.81, 3.22, 3.85, 4.39,0.49, 0.48) 4.68, 5.3, 5.67, 0, 0, 0, 0, 0, 0, 0, 0) If Text8.Text = "Z" And Text7.Text = "71" Then pnum= Array(0, 0.06, 0.09, 0.17, 0.2, 0.23, 0.27, 0.3, If Text8.Text = "C" And Text7.Text = "200" Then pnum 0.33, 0.39, 0.46, 0.5, 0.54, 0.58,0.61, 0.62, 0.62, = Array(0, 1.39, 2.41, 3.69, 4.07, 4.58, 5.29, 5.84, 0.61, 0.58) 6.07, 6.34, 6.02, 0, 0, 0, 0, 0, 0, 0, 0) If Text8.Text = "Z" And Text7.Text = "80" Then pnum If Text8.Text = "C" And Text7.Text = "250" Then pnum = Array(0, 0.1, 0.14, 0.2, 0.22, 0.26, 0.3, 0.35, =Array(0, 2.03, 3.62, 5.64, 6.23, 7.04, 8.21, 9.04, 0.39, 0.44, 0.5, 0.56, 0.61, 0.64, 0.67, 0.67, 0.66, 9.38, 9.62, 0, 0, 0, 0, 0, 0, 0, 0, 0)0.64, 0) If Text8.Text = "C" And Text7.Text = "315" Then pnum= Array(0, 2.84, 5.14, 8.09, 8.92, 10.05, 11.53, If Text8.Text = "A" And Text7.Text = "75" Then pnum 12.46, 12.72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) = Array(0, 0.15, 0.26, 0.4, 0.45, 0.51, 0.6, 0.68, If Text8.Text = "C" And Text7.Text = "400" Then pnum 0.73, 0.84, 0.92, 1, 1.04, 1.08,1.09, 1.07, 1.02, = Array(0, 3.91, 7.06, 11.02, 12.1, 13.48, 15.04, 0.96, 0.8) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)If Text8.Text = "A" And Text7.Text = "90" Then pnum= Array(0, 0.22, 0.39, 0.61, 0.68, 0.77, 0.93, 1.07, If Text8.Text = "D" And Text7.Text = "355" Then pnum 1.15, 1.34, 1.5, 1.64, 1.73, 1.83, 1.87, 1.88, 1.82, = Array(3.01, 5.31, 9.24, 13.7, 14.83, 16.15, 17.25, 0, 0) 16.77, 15.63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) If Text8.Text = "A" And Text7.Text = "100" Then pnum If Text8.Text = "D" And Text7.Text = "400" Then pnum = Array(0, 0.26, 0.47, 0.74, 0.83, 0.95, 1.14, 1.32, =Array(3.66, 6.52, 11.45, 17.07, 18.46, 20.06, 21.2, 1.42, 1.66, 1.87,2.05, 2.19, 2.28, 2.34, 2.33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)0, 0) If Text8.Text = "D" And Text7.Text = "450" Then pnum IfText8.Text = "A" And Text7.Text = "125" Then pnum = Array(4.37, 7.9,13.85, 20.63, 22.25, 24.01, 24.84, = Array(0, 0.37, 0.67, 1.07, 1.19,1.37, 1.66, 1.92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)2.07, 2.44, 2.74, 2.98,3.16, 3.26, 0, 0, 0, 0, 0) If Text8.Text = "D" And Text7.Text = "500" Then pnum= Array(5.08, 9.21, 16.2, 23#, 25.76, 27.5, 0, 0, If Text8.Text = "B" And Text7.Text = "125" Then pnum 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) = Array(0, 0.48, 0.84, 1.3, 1.44, 1.64, 1.93, 2.19,2.33, 2.64, 2.85, 2.96, 2.94, 2.8, 0, 0, 0, 0, 0) If Text8.Text = "E" And Text7.Text = "500" Then pnum If Text8.Text = "B" And Text7.Text = "140" Then pnum = Array(6.21, 10.86, 18.55, 26.21, 27.57, 28.32, 0, = Array(0, 0.59, 1.05, 1.64, 1.82, 2.08, 2.47, 2.82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)3, 3.42, 3.7, 3.85, 3.83, 0, 0, 0, 0, 0, 0) If Text8.Text = "E" And Text7.Text = "560" Then pnum If Text8.Text = "B" And Text7.Text = "160" Then pnum = Array(7.32, 13.09, 22.49, 31.59, 33.03, 33.4, 0, = Array(0, 0.74, 1.32, 2.09, 2.32, 2.66, 3.17, 3.62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)3.86,4.4, 4.75, 4.89, 0, 0, 0, 0, 0, 0, 0) If Text8.Text = "E" And Text7.Text = "630" Then pnum= Array(8.75, 15.65, 26.95, 37.26, 38.62, 0, 0, 0, ElseIf i >= 1.05 And i <= 1.08 Then 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) ki = 1.0276 If Text8.Text = "E" And Text7.Text = "710" Then pnum ElseIf i >=1.09 And i <= 1.12 Then = Array(10.31, 18.52, 31.83, 42.87, 43.52, 0, 0, 0, ki = 1.04190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) ElseIf i >= 1.13 And i <= 1.18 Then ki = 1.0567For k = 0 To 20 Step 1 ElseIf i >= 1.19 And i <= 1.24 Thenc1 = Abs(nn(k) - n1) ki = 1.0719If c1 < c2 Then ElseIf i >= 1.25 And i <= 1.34 Thenc2 = c1 ki = 1.0875shunxu = k ElseIf i >= 1.35 And i <= 1.51 ThenEnd If ki = 1.1036If nn(k) = 0 Then ElseIf i >= 1.52 And i <= 1.99 ThenExit For ki = 1.1202End If ElseIf i >= 2 ThenNext k ki = 1.1373End Ifp0 = pnum(shunxu)For k = 0 To 21 Step 1If Text8.Text = "Z" Then jiao) c1 = Abs(100 + k * 10 - kb =0.0002925 If c1 <= 5 ThenElseIf Text8.Text = "A" Then kaa = mm(k)kb = 0.0007725 End IfElseIf Text8.Text = "B" Then Next kkb = 0.0019785ElseIf Text8.Text = "C" Then dp0 = kb * n1 * (1 - 1 / ki) kb =0.005625 z = pd / (p0 + dp0) / kaa / kl ElseIf Text8.Text = "D" Then z = Round(z, 0)kb = 0.01995ElseIf Text8.Text = "E" Then If z >= 10 Thenkb = 0.03735 MsgBox "小带轮直径和带型选择不合适~,重新输入End If 直径和选择带型"Exit SubIf i >= 1 And i <= 1.01 Then End Ifki = 1 End SubElseIf i >= 1.02 And i <= 1.04 Then Private Sub f7() '选择质量函数ki = 1.0136 If Text8.Text = "Z" Thenm = 0.06 ElseIf Text8.Text = "A" Then m = 0.1 ElseIf Text8.Text = "B" Then m = 0.17 ElseIf Text8.Text = "C" Then m = 0.3 ElseIf Text8.Text = "D" Then m = 0.6 ElseIf Text8.Text = "E" Then m = 0.9 End If End Sub Private Sub f8() '计算初拉力和轴向力 ff0 = 500 * pd / z / v * (2.5 - kaa) / kaa + m * v * vff1 = 2 * z * ff0 * Sin(jiao * pi / 2 / 180)ff0 = Round(ff0, 3)ff1 = Round(ff1, 3)aaa = Round(aaa, 3)jiao = Round(jiao, 3) End Subdd2=DD2[j];else #include<stdio.h>dd2=DD2[j-1]; #include<math.h>return dd2; #include<string.h>} #define PAI 3.14float* Compute_LAK(float dd1,float dd2,int TYPE) #include<windows.h> {int j=0;float a1,a2,a0,Ld0,temp,KALF,Ld,a,KL; float Select_dd1(int TYPE) float LAK[3]; {float int i;kl[23][6]={{400,0.87},{450,0.89},{500,0.91}, float dd1;{560,0.94},{630,0.96,0.81},{710,0.99,0.83},{ float800,1.00,0.85,0.82},{900,1.03,0.87,0.84,0.83},{1DD1[6][4]={{50,63,71 ,80},{75,90,100,125},{125,14000,1.06,0.89,0.86,0.86,0.83}, 0,160,180},{1120,1.08,0.91,0.88,0.88,0.86},{1250,1.10,0.93,0.90,0.91,0.89},{1400,1.14,0.96,0.92,0.93,0.{200,250,315,400},{355,400,450,500},{500,56091},{1600,1.16,0.99,0.95,0.95,0.93}, ,630,710}};{1800,1.18,1.01,0.98,0.97,0.96},{2000,0,1.03 printf("该带型推荐的小带轮基准直径有,1.00,0.99,0.98},{2240,0,1.06,1.03,1.02,1.00},{2(mm):\n");500,0,1.09,1.05,1.04,1.03}, for(i=0;i<4;i++){2800,0,1.11,1.07,1.07,1.06},{3150,0,1.13,1. {09,1.09,1.08},{3550,0,1.17,1.13,1.12,1.11},{4000 printf("%.2f",DD1[TYPE][i]);,0,1.19,1.15,1.15,1.14},{4500,0,0,1.18,1.18,1.17 }},{5000,0,0,0,1.21,1.20}}; printf("\n请选择小带轮基准直径dd1:");a1=0.7*(dd1+dd2); scanf("%f",&dd1);a2=2*(dd1+dd2); return dd1;printf("请选择输入初估中心距a0(范围}为%.2fmm~%.2fmm):",a1,a2); float Select_dd2(int dd1,float i) scanf("%f",&a0); {Ld0=2*a0+(dd1+dd2)*PAI/2+(dd2-dd1)*(dd2-dd1) float/a0/4; DD2[]={50,56,63,71,80,90,100,112,125,140,150,160for(j=0;j<23;j++) ,180,200,224,{temp=Ld0-kl[j][0]; 250,280,315,355,400,425,450,500,560,600,630, if(temp<=0) 710,800};break; float dd2,temp,t;} int j=0;if((Ld0-kl[j-1][0])>(kl[j][0]-Ld0)) temp=i*dd1;{ Ld=kl[j][0]; for(j=0;j<28;j++)KL=kl[j][TYPE+1]; {} t=temp-DD2[j];else if(t<=0){ Ld=kl[j-1][0]; break;KL=kl[j-1][TYPE+1]; }} if((DD2[j]-temp)<(temp-DD2[j-1]))a=a0+(Ld-Ld0)/2;LAK[0]=Ld; printf("电机额定功率P(KW):");LAK[1]=a; scanf("%f",&P);LAK[2]=KL; printf("小带轮/电动机转速n1(r/min):");return LAK; scanf("%f",&n1); } printf("传动比i:");scanf("%f",&i);printf("每天工作时间H(h):"); int main() scanf("%f",&H); { printf("原动机类型(1或):");float scanf("%d",&YDJ);ka1[4][3]={{1.0,1.1,1.2},{1.1,1.2,1.3},{1.2,1.3, printf("工作机载荷类型:\n1,载荷平稳\n2,载荷 1.4},{1.3,1.4,1.5}}; 变动较小\n3,载荷变动较大\n4,载荷变动很大\n");float scanf("%d",&GZJ);ka2[4][3]={{1.1,1.2,1.3},{1.2,1.3,1.4},{1.4,1.5,DX: printf("选择V带带型:"); 1.6},{1.5,1.6,1.8}}; scanf(" %c",&type);float if(type<91) K1[6]={0.246,0.449,0.794,1.48,3.15,4.57}; type+=32;float switch(type) KI[10]={1.0000,1.0136,1.0276,1.0419,1.0567,1.071 {9,1.0875,1.1036,1.1202,1.1373}; case 'z':float TYPE=0; I[10]={1.00,1.02,1.05,1.09,1.13,1.19,1.25,1.35,1break; .52,2.00}; case 'a':float TYPE=1; K2[6]={7.44,19.02,50.6,143.2,507.3,951.5}; break;float case 'b': K3[6]={0.441e-4,0.765e-4,1.31e-4,2.34e-4,4.77e-4TYPE=2; ,7.06e-4}; break;float case 'c': KB[6]={0.2925e-3,0.7725e-3,1.9875e-3,5.625e-3,19TYPE=3; .95e-3,37.35e-3}; break;float case 'd': kalf[2][14]={220,210,200,190,180,170,160,150,140 TYPE=4; ,130,120,110,100,90,1.20,1.15,1.10,1.05,1.00,0.9 break;8,0.95,0.92, case 'e':0.89,0.86,0.82,0.78,0.73,0.68}; TYPE=5;float M[6]={0.06,0.1,0.17,0.3,0.6,0.9}; break;float f[6]={8,10,12.5,17,23,29}; case 'y':float e[6]={12,15,19,25.5,37,44.5}; TYPE=6;float break; P,H,i,n1,KA,Ki,dd1,dd2,V,P0,DIFP0,Pd,VMAX,*LAK,m case 's': ,Ld,KALF,a,KL,z,F0,ALF1,Q,B,Kb; TYPE=7;int YDJ,GZJ,TYPE,ANS,j; break;char type,ans; case 'n':printf(" V带传动 TYPE=8; 设计程序\n"); }START: printf("请输入初始参数:\n"); if(YDJ==1){ break;if(H<10) }Ki=KI[j]; KA=ka1[GZJ-1][0];Kb=KB[TYPE]; else if(H>16)KA=ka1[GZJ-1][2]; DIFP0=Kb*n1*(1-1/Ki);else LAK=Compute_LAK(dd1,dd2,TYPE);KA=ka1[GZJ-1][1]; Ld=LAK[0];} a=LAK[1];if(YDJ==2) KL=LAK[2];{ ALF1=180-57.3*(dd2-dd1)/a;if(H<10) for(j=0;j<14;j++)KA=ka2[GZJ-1][0]; {else if(H>16) if(ALF1<kalf[0][j]&&ALF1>kalf[0][j+1])KA=ka2[GZJ-1][2]; {elseKA=ka2[GZJ-1][1]; KALF=kalf[1][j]+(kalf[1][j]-kalf[1][j+1])*(ALF1- } kalf[0][j])/10;Pd=KA*P; break;switch(TYPE) }{ }case 0: z=ceil(Pd/(KALF*KL*(P0+DIFP0)));case 1: if(z>=10)case 2: goto DX;case 3: m=M[TYPE];VMAX=25; F0=500*Pd*(2.5-KALF)/(z*V*KALF)+m*V*V;Q=2*z*F0*sin(ALF1*PAI/360); break;case 4: B=(z-1)*e[TYPE]+2*f[TYPE];case 5:VMAX=30; printf("小带轮基准直径dd1:%.3f mm\n大带轮基准直径break; dd2:%.3f mm\n中心距a:%.3f mm\n带长L:%.3f mm\n带宽} B:%.3f mm\n带的根数Z:%.3f\n初拉力F0:%.3f N\n轴压DD1:dd1=Select_dd1(TYPE); 力FQ:%.3f N\n",dd1,dd2,a,Ld,B,z,F0,Q);V=PAI*dd1*n1/60000; X: printf("计算下一组带轮直径按'Y',重新开始按while(V>VMAX) 'S',结束按'N':");{ scanf(" %c",&ans);printf("V带速度验算不符!小带轮基准直径过小!请重新选择!\n"); if(ans=='y')dd1=Select_dd1(TYPE); goto DD1;V=PAI*dd1*n1/60000; else if(ans=='s')} goto START;dd2=Select_dd2(dd1,i); else if(ans=='n')P0=(K1[TYPE]*pow(V,-0.09)-K2[TYPE]/dd1-K3[TY printf("程序结束"); PE]*V*V)*V; elsefor(j=9;j>=0;j--) {{ printf("输入错误,请重新输入");m=i-I[j]; goto X;if(m>=0) }return 0;}。