Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Dzerassa / Delphi / Unit1

.pas
Скачиваний:
5
Добавлен:
13.04.2015
Размер:
7.46 Кб
Скачать
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls,math,ComObj, AutoCAD_TLB, ActiveX,
XPMan, jpeg;

type
TForm1 = class(TForm)
Image1: TImage;
Label3: TLabel;
Label2: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
LabeledEdit2: TLabeledEdit;
LabeledEdit3: TLabeledEdit;
Button1: TButton;
LabeledEdit4: TLabeledEdit;
LabeledEdit5: TLabeledEdit;
LabeledEdit6: TLabeledEdit;
LabeledEdit7: TLabeledEdit;
LabeledEdit8: TLabeledEdit;
LabeledEdit9: TLabeledEdit;
LabeledEdit10: TLabeledEdit;
LabeledEdit11: TLabeledEdit;
LabeledEdit12: TLabeledEdit;
LabeledEdit1: TLabeledEdit;
BitBtn1: TBitBtn;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
Edit1: TEdit;
Edit2: TEdit;
Button2: TButton;
Button3: TButton;
XPManifest1: TXPManifest;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);






private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
m,z1,z2,z,k1,k2,i,diam1,diam2,Ddiam1,Ddiam2,Bdiam1,Bdiam2,b,dvyh1,dvyh2,lvyh1,lvyh2:integer;
a,u,d1,d2,da1,da2,b1,b2,M2,M1,DM1,DM2:real;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
t1:array[1..10,1..5] of integer;
t2:array[1..10,1..5] of integer;

begin
m:=StrToInt(LabeledEdit1.Text);
z1:=StrToInt(LabeledEdit2.Text);
z2:=StrToInt(LabeledEdit3.Text);
if (m<=0) then ShowMessage ('Неверно задан параметр m');
if (z1<=0) then ShowMessage ('Неверно задан параметр z1');
if (z2<=0) then ShowMessage ('Неверно задан параметр z2');

u:=z2/z1;
z:=z1+z2; // общее число зубьев колеса и шестерни

a:=(z*m)/(2*Cos(0.175)); // межосевое расстояние
LabeledEdit4.Text:=FloatToStr(a);

//основные размеры зубчатой пары

d1:=(m*z1)/cos(0.175); // Диаметр ведущего вала d1
d2:=(m*z2)/cos(0.175); // Диаметр ведомого вала d2
da1:=d1+2*m; // для шестерни
da2:=d2+2*m; // для вала
b1:=0.25*a+5;
b2:=0.25*a;

LabeledEdit5.Text:=FloatToStr(d1); LabeledEdit6.Text:=FloatToStr(d2);
LabeledEdit7.Text:=FloatToStr(da1); LabeledEdit8.Text:=FloatToStr(da2);
LabeledEdit9.Text:=FloatToStr(b1); LabeledEdit10.Text:=FloatToStr(b2);

M2:=(EXP(3*LN(a/((u+1)*(EXP((1/3)*LN((EXP(2*LN(0.57)))*(1.2/(0.25*u*1.35)))))))))/1000;
LabeledEdit11.Text:=FloatToStr(M2);

M1:=M2/u;
LabeledEdit12.Text:=FloatToStr(M1);

DM1:=exp((1/3)*ln((16*M1*1000)/(pi*15)));
Edit1.Text:=FloatToStr(DM1);
DM2:=exp((1/3)*ln((16*M2*1000)/(pi*20)));
Edit2.Text:=FloatToStr(DM2);

k1:=StrToInt(ComboBox1.Text);
//1 инициализация массива с данными о подшипниках

t1[1,1]:=7604; t1[1,2]:=20; t1[1,3]:=52; t1[1,4]:=21; t1[1,5]:=2950;
t1[2,1]:=7605; t1[2,2]:=25; t1[2,3]:=62; t1[2,4]:=24; t1[2,5]:=4550;
t1[3,1]:=7607; t1[3,2]:=35; t1[3,3]:=80; t1[3,4]:=31; t1[3,5]:=7160;
t1[4,1]:=7608; t1[4,2]:=40; t1[4,3]:=90; t1[4,4]:=33; t1[4,5]:=8000;
t1[5,1]:=7609; t1[5,2]:=45; t1[5,3]:=100; t1[5,4]:=36; t1[5,5]:=10400;
t1[6,1]:=7610; t1[6,2]:=50; t1[6,3]:=110; t1[6,4]:=40; t1[6,5]:=12200;
t1[7,1]:=7613; t1[7,2]:=65; t1[7,3]:=140; t1[7,4]:=48; t1[7,5]:=17800;
t1[8,1]:=7614; t1[8,2]:=70; t1[8,3]:=150; t1[8,4]:=51; t1[8,5]:=20400;
t1[9,1]:=7615; t1[9,2]:=75; t1[9,3]:=160; t1[9,4]:=55; t1[9,5]:=24900;
t1[10,1]:=7620; t1[10,2]:=100; t1[10,3]:=215; t1[10,4]:=73; t1[10,5]:=45100;


for i:=1 to 10 do
begin
if t1[i,5]=k1 then begin
diam1:=t1[i,2];
Ddiam1:=t1[i,3];
Bdiam1:=t1[i,4]
end
end;
Label3.Caption:='d='+IntToStr(diam1)+' '+'D='+IntToStr(Ddiam1)+' '+'B='+IntToStr(Bdiam1);


dvyh1:=diam1-10;

if (dvyh1>26)and (dvyh1<65) then lvyh1:=70
else
begin
if (dvyh1>=65) and (dvyh1<95) then lvyh1:=150
else
begin if dvyh1>=95 then
lvyh1:=200
end
end;

k2:=StrToInt(ComboBox2.Text);
//2 инициализация массива с данными о подшипниках

t2[1,1]:=7507; t2[1,2]:=35; t2[1,3]:=72; t2[1,4]:=23; t2[1,5]:=5020;
t2[2,1]:=7511; t2[2,2]:=55; t2[2,3]:=100; t2[2,4]:=28; t2[2,5]:=7220;
t2[3,1]:=7513; t2[3,2]:=65; t2[3,3]:=120; t2[3,4]:=31; t2[3,5]:=10900;
t2[4,1]:=7514; t2[4,2]:=70; t2[4,3]:=125; t2[4,4]:=31; t2[4,5]:=11000;
t2[5,1]:=7515; t2[5,2]:=75; t2[5,3]:=130; t2[5,4]:=31; t2[5,5]:=11500;
t2[6,1]:=7516; t2[6,2]:=80; t2[6,3]:=140; t2[6,4]:=33; t2[6,5]:=13300;
t2[7,1]:=7517; t2[7,2]:=85; t2[7,3]:=150; t2[7,4]:=36; t2[7,5]:=15100;
t2[8,1]:=7518; t2[8,2]:=90; t2[8,3]:=160; t2[8,4]:=44; t2[8,5]:=17900;
t2[9,1]:=7519; t2[9,2]:=95; t2[9,3]:=170; t2[9,4]:=43; t2[9,5]:=22500;
t2[10,1]:=7520; t2[10,2]:=100; t2[10,3]:=180; t2[10,4]:=46; t2[10,5]:=23200;


for i:=1 to 10 do
begin
if t2[i,5]=k2 then begin
diam2:=t2[i,2];
Ddiam2:=t2[i,3];
Bdiam2:=t2[i,4]
end
end;
Label8.Caption:='d='+IntToStr(diam2)+' '+'D='+IntToStr(Ddiam2)+' '+'B='+IntToStr(Bdiam2);


dvyh2:=diam2-10;

if (dvyh2>26)and (dvyh2<65) then lvyh2:=70
else
begin
if (dvyh2>=65) and (dvyh2<95) then lvyh2:=150
else
begin if dvyh2>=95 then
lvyh2:=200
end
end;




end;




procedure TForm1.Button2Click(Sender: TObject);
var F:TEXTFILE;

begin
assignfile(f,'FReductor.txt');
rewrite(f);
writeln(f,round(d1));
writeln(f,round(d2));
writeln(f,round(da1));
writeln(f,round(da2));
writeln(f,round(b1));
writeln(f,round(b2));
writeln(f,round(a));
writeln(f,round(DM1));
writeln(f,round(DM2));
writeln(f,diam1);
writeln(f,diam2);
writeln(f,Bdiam1);
writeln(f,Bdiam2);
writeln(f,Ddiam1);
writeln(f,Ddiam2);
writeln(f,Dvyh1);
writeln(f,Dvyh2);
writeln(f,Lvyh1);
writeln(f,Lvyh2);
closefile(f);

end;

procedure TForm1.Button3Click(Sender: TObject);
var res:HResult;
ID:TGUID;
inter:IUnknown;
V:OleVariant;
begin
ID:=ProgIDToClassID('AutoCAD.Application');
res:=GetActiveObject(ID, nil, inter);
if succeeded(res)=true
then V:=GetActiveOleObject('AutoCAD.Application')
else V:=CreateOleObject('AutoCAD.Application');
V.visible:=true;
V.ActiveDocument.SendCommand('(load "F:\\Dzerassa\\Kurs.lsp")');


end;




procedure TForm1.FormCreate(Sender: TObject);
begin
Label4.Canvas.Brush.Style:=bsClear;
end;

end.





Соседние файлы в папке Delphi
  • #
    13.04.2015876 б4Project1.res
  • #
    13.04.2015249 б4Project1.~dpr
  • #
    13.04.201512.76 Кб4Unit1.dcu
  • #
    13.04.201551 б4Unit1.ddp
  • #
    13.04.2015358.96 Кб4Unit1.dfm
  • #
    13.04.20157.46 Кб5Unit1.pas
  • #
    13.04.201551 б4Unit1.~ddp
  • #
    13.04.20158.27 Кб4Unit1.~dfm
  • #
    13.04.20157.31 Кб4Unit1.~pas