Автоматизированные расчеты в САПР ТП

 

Тема:Разработка программного модуль расчета режимов резания для сверлильного перехода.

Задание:Разработать модуль расчета скорости резания в САПР ТП для сверлильного перехода с учетом следующих требований:

· Диаметр отверстий выбирается из 3D-модели детали.

· Подача выбирается из БД.

· Коэффициенты выбираются из одной таблица БД.

 

· Данные для расчёта:

· диаметр обрабатываемого отверстия - D = 10мм;

· глубина обрабатываемого отверстия - L = 20мм;

· обрабатываемый материал – сталь 50Л конструкционная углеродистая σв = 750МПа;

· материал режущей части инструмента – Р6М5.

 

Расчетные данные:

Глубина резания t, мм:

 

t = 0,5D = 0,5*10 = 5мм;

 

 

 

3. Подача s, мм/об=0,34 мм/об.

 

Критерием выбора подачи являются:

· Диаметр сверла;

· Твердость

4. Скорость резания V, м/мин:

Cv = 9,8; q = 0,40; y = 0,50; m = 0,20; y = 0,50; Т = 70 мин

 

Общий поправочный коэффициент Kv= 1


Рекомендации:

1. Разработайте главную форму (см. рис.1.)

2. Разработайте базу данных. Ее структура показана на рис. 2

Рис. 1. База данных и фрагмент модуля данных.

3. Разработайте базовый запрос на выбор.

4. Разработайте Запрос на выбор подачи по набору критериев на основе базового запроса S:

SELECT S.Материал, S.HBmin, S.HBmax, S.dmin, S.dmax, S.Smin, S.Smax

FROM S WHERE (((S.HBmin)<=:Par1))

AND ((S.dmin)<=:Par2) AND ((S.dmax)>:Par2 ) AND ((S.Материал)>:Par3)));


Код программы. Приложение

 

procedure TForm1.Button1Click(Sender: TObject);

begin

dm.ADOQuery1.Close;

dm.ADOQuery1.Parameters[0].Value:=edit1.Text;

dm.ADOQuery1.Parameters[1].Value:=edit3.Text;

dm.ADOQuery1.Parameters[2].Value:=edit8.Text;

 

dm.ADOQuery1.Open;

edit11.Text:=dm.ADOQuery1.Fields[5].Text;

 

end;

 

procedure TForm1.Button2Click(Sender: TObject);

var D, t: real;

begin

D:=strtofloat(edit1.Text);

t:=D*0.5;

edit12.Text:= floatToStr(t);

 

end;

 

procedure TForm1.Button3Click(Sender: TObject);

var V,C,T,D,s,K,q,y,m:real;

begin

C:=strToFloat(Edit4.Text);

D:=strToFloat(Edit1.Text);

q:=strToFloat(Edit5.Text);

y:=strToFloat(Edit6.Text);

T:=1;

s:=strToFloat(Edit11.Text);

K:=1;

m:=strToFloat(Edit7.Text);

V:=((C*(math.Power(D,q)))/(math.Power(T,m)*math.Power(s,y)))*K;

edit13.Text:= floatToStr(V)

end;

 

end.