Выбор значения скорости резания по входным данным. Разработка программы VBA, верно определяющей значение подачи по заданным параметрам, страница 3

2. Формалізація задачі

Постановку задачи выполняем по методу НІРО-диаграмм, в соответствии с которым документация оформляется в виде альбома схем, отображающих структуру задачи, наборы входных и выходных данных и методы обработки данных. Перевод входных данных в переменные приведен на схеме 1:

Схема 1

Наименование параметра

Переменная

1.  Тип фрезы:

- торцовая

- концевая

1. TFr

- TFr =1

- TFr =2

2.  Глубина резания:

2. t

3.   Материал инструмента

-Быстрорежущая сталь

-Твердый сплав

3. Mat

-Mat=1

-Mat=2

4.  Отношение D/bcp:

4. D/bcp

5.  Подача

5. s

6.  Коэффициент К1

6.  К

В схеме 2 приведен перевод выходного параметра в переменную:

Схема 2.

Наименование параметра

Переменная

1.  Табличная скорость

1.  Vt

2.  Рсчетная скорость

2.  V

3. Опис програми

Программа предназначена для поиска нужного значения подачи инструмента. Для работы необходимо запустить файл Книга.xls, затем кликнуть мышкой по кнопке «Выбор скорости». Откроется окно программы. В нем следует выбрать начальные данные и нажать клавишу «Выбор». При необходимости нового расчета данные обнуляются нажатием на кнопку сброс.

Результат заносится в поле под надписью «Результат».

Література

1.  Общетехнический справочник  / под ред. Е. А. Скороходова – 2-е изд., перераб. и доп. – М.: Машиностроение, 1982, - 415 с, илл.

2.  Методические указания по выполнению лабораторных работ в Excel

3.  Джон Уокенбах. Профессиональное программирование на VBA в EXCEL 2002/ М.: «Диалектика», 2003 г, -781 с., илл.

4.  Рамел Д. Visual Basic® .Net. Справочник программиста/Практ. пособ. /Пер. с англ.— М.: Издательство ЭКОМ, 2002.—352 с., илл.

Додаток 1. Алгоритм роботи програми


bTfr, bMat, bt,

bs, bDkb

 


V=0

Vt=0

 


i=1..n

 


bTfr

=

Tfr

 


bMat

=

Mat

 


bt

=

t

 



bs

=

s


bDkb

=

Dkb

V, Vt

 


Додаток 2. Текстпрограми

Программа  module1

Rem attribute vba_moduletype=vbamodule

Sub Ïðÿìîóãîëüíèê1_Ùåë÷îê()

UserForm1.Show

End Sub

Sub Tab1(Tfr, Mat, t, s, Dkb)

Dim BTfr As Double

Dim BMat As Double

Dim Bt As Double

Dim Bs As Single

Dim BDkb As Single

Dim K, Vt, V As Single

Dim a, i As Integer

Set bases = Worksheets("T1").Range("A3:H191")

a = bases.Rows.Count

K = 0

Vt = 0

V = 0

For i = 1 To a

BTfr = bases.Cells(i, 1)

BMat = bases.Cells(i, 2)

Bt = bases.Cells(i, 3)

Bs = bases.Cells(i, 4)

BDkb = bases.Cells(i, 5)

If (BTfr = Tfr) And (BMat = Mat) And (Bt = t) And (Bs = s) And (BDkb = Dkb) Then

K = bases.Cells(i, 6)

Vt = bases.Cells(i, 7)

V = bases.Cells(i, 8)

Exit For

End If

Next i

UserForm1.TextBox1.Value = "Êîýôôèöèåíò K1 = " & K & ";" & Chr(13) & Chr(10)

UserForm1.TextBox1.Value = UserForm1.TextBox1.Value & "Òàáëè÷íàÿ ñêîðîñòü Vòàáë = " & Vt & " ì/ìèí;" & Chr(13) & Chr(10)

UserForm1.TextBox1.Value = UserForm1.TextBox1.Value & "Ðàñ÷åòíàÿ ñêîðîñòü V = Vòàáë*Ê1 = " & V & " ì/ìèí;" & Chr(13) & Chr(10)

End Sub

Программа  UserForm1

Rem attribute vba_moduletype=vbamodule

Dim Tfr, Mat, t As Double

Dim s, Dkb As Single

Private Sub CommandButton1_Click()

If Tfr = 0 Or Mat = 0 Or t = 0 Or s = 0 Or Dkb = 0 Then MsgBox "ïðîâåðüòå ïàðàìåòðû"