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

2684

.pdf
Скачиваний:
0
Добавлен:
15.11.2022
Размер:
2.05 Mб
Скачать

{Окружность выступов} st_ang:=trunc(ang_0[c]+(s1_ang[c]-

s1_s_ang[c]) div 2); end_ang:=trunc(ang_0[c]+s1_ang[c]-

(s1_ang[c]-s1_s_ang[c]) div 2);

arc(x_center[c],trunc(getmaxy/2),st_ang,end_an g,trunc(d1[c]/2));

ang_0[c]:=trunc(ang_0[c]+s1_ang[c]); getarccoords(arccoords);

if flag=true then begin x2:=arccoords.xstart; y2:=arccoords.ystart;

line(x1,y1,x2,y2); end

else begin

x0:=arccoords.xstart;

y0:=arccoords.ystart;

end;

x1:=arccoords.xend;

y1:=arccoords.yend;

{Окружность впадин} st_ang:=trunc(ang_0[c]+(s1_ang[c]-

s2_s_ang[c]) div 2); end_ang:=trunc(ang_0[c]+s1_ang[c]-

(s1_ang[c]-s2_s_ang[c]) div 2);

arc(x_center[c],trunc(getmaxy/2),st_ang,end_an g,trunc(d2[c]/2));

ang_0[c]:=trunc(ang_0[c]+s1_ang[c]); getarccoords(arccoords);

x2:=arccoords.xstart;

y2:=arccoords.ystart;

line(x1,y1,x2,y2);

x1:=arccoords.xend;

y1:=arccoords.yend;

flag:=true;

end;

x1:=arccoords.xend;

y1:=arccoords.yend;

line(x1,y1,x0,y0);

circle(x_center[c],trunc(getmaxy/2),trunc(d[c] /8));

setfillstyle(1,blue);

if ang_0[c]>360 then ang_0[c]:=ang_0[c]- 360;

ang_0[c]:=ang_0[c]+1;

if c=2 then ang_0[2]:=ang_0[2]-1- trunc(z[1]/z[2]);

end;

end;

until keypressed; key:=readkey; setactivepage(0);

setcolor(yellow);

circle(x_center[1],trunc(getmaxy/2),trunc(d1[1 ]/2));

circle(x_center[2],trunc(getmaxy/2),trunc(d1[2 ]/2));

outtextxy(180,50,'Это-окружность выступов');

repeat until keypressed; key:=readkey;

setcolor(green);

circle(x_center[1],trunc(getmaxy/2),trunc(d2[1 ]/2));

circle(x_center[2],trunc(getmaxy/2),trunc(d2[2 ]/2));

outtextxy(165,70,'Это-окружность впадин'); repeat until keypressed;

key:=readkey;

setcolor(CYAN);

circle(x_center[1],trunc(getmaxy/2),trunc(d[1] /2));

circle(x_center[2],trunc(getmaxy/2),trunc(d[2] /2));

outtextxy(135,90,'А это-делительная'); outtextxy(230,110,'окружность');

repeat until keypressed; key:=readkey;

settextjustify(0,2);

setcolor(magenta); outtextxy(15,270,'Окружности впадин и

выступов очерчивают нижнюю'); outtextxy(15,290,'и верхнюю границы зуба.

Делительная окружность'); outtextxy(15,310,'разделяет зуб на две

части - головку и ножку. Очевидно,');

outtextxy(15,330,'что высота зуба равна сумме высот ножки и головки.');

repeat until keypressed; key:=readkey; clearviewport;

end;

procedure point_2; label 4;

var

p,d,m,h,aw,b1,ha,hf,ha1,c,pci,i,u,re,rm,me,dl1

,dl2,

de1,de2,he,dae1,dae2,b,q,d1,da1,df1,d2,da2,df2

,hf1,

dn,kn,b2,ham:real;

z,z1,z2,n,n1,rec,otv1:integer; a,da,df:array[1..18] of real; w:array[1..17] of real; procedure pryam;

begin clrscr;

write('Введите шаг[мм] зубчатого колеса -

');

readln(p); m:=p/pi; clrscr;

writeln('ряд 1: 0.1; 0.12; 0.15; 0.2; 0.25; 0.3; 0.4; 0.5;');

writeln('

0.6; 0.8 ; 1.0 ; 1.25;

1.5; 2.0; 2.5; 3.0;');

writeln('

4.0; 5.0');writeln;

writeln('ряд

2: 0.14; 0.18; 0.22; 0.28;

0.35; 0.45; 0.55;

0.7;');

writeln('

0.9 ; 1.125; 1.375; 1.75;

2.25; 2.75; 3.5; 4.5;');

writeln(' 5.5; 6.0');writeln; writeln('Вычесленное значение модуля

m[мм]= ',m:5:3);writeln;

writeln('Выберете стандартный модуль '); write('используя ряд 1 или ряд 2 -'); readln(m);writeln;

ha1:=1;

c:=0.25;

write('Введите число зубчатых колес - '); readln(n);

n1:=1;

i:=1.0;

clrscr; repeat

write('Введите число зубьев ',n1,'-го колеса-');

readln(z);

d:=m*z;

a[n1]:=d;

writeln('Делительный диаметр ',n1,'-го колеса d[мм] = ',d:5:2);

writeln;

if n1>1 then i:=i*a[n1]/a[n1-1]*(-1); n1:=n1+1;

until n1>n;

writeln('Для продолжения нажмите любую клавишу');

repeat until keypressed;clrscr; writeln('Значение передаточного отношения

i=',i:6:3);

if i<0 then u:=i*(-1) else u:=i; ha:=ha1*m;

hf:=(ha1+c)*m;

h:=ha+hf;

writeln('Высота зуба h[мм] = ',h:5:2);

n1:=1; repeat

da[n1]:=a[n1]+2*ha1*m; writeln('Значение диаметра вершины

зубьев',n1,'-го колеса da[мм] = ',da[n1]:5:2); df[n1]:=a[n1]-2*(ha1+c)*m; writeln('Значение диаметра впадин

df[мм] = ',df[n1]:5:2); n1:=n1+1;

until n1>n; n1:=1; repeat

aw:=0.5*(a[n1]+a[n1+1]); write('Значение межосевого

расстояния',n1,'-й зубчатой пары '); writeln('aw[мм]=',aw:6:2); n1:=n1+1;

until n1=n;

 

 

writeln('--------------------------------

 

 

------------------

');

 

writeln('! pciba

!

Применение

 

!');

writeln('--------------------------------

 

 

------------------

');

 

writeln('! 0.01-0.1

! Кинематические и

легконагруженные

!');

 

writeln('!

 

!

передачи

!');

writeln('--------------------------------

 

 

------------------

');

 

writeln('! 0.1-0.25

! Легко и

средненагруженные передачи !');

writeln('!

 

! при повышенной

жесткости валов

!');

 

writeln('--------------------------------

------------------');

writeln('! 0.25-0.40 ! Передачи

повышенной и высокой

!');

writeln('!

 

!

нагруженности при

достаточной

!');

 

 

writeln('!

 

!

жесткости валов

!');

 

 

 

writeln('--------------------------------

------------------');

write('Выберите значение коэффициента pciba= ');

readln(pci);

b1:=aw*pci;

writeln('Ширина венца зубчатого колеса b[мм]=',b1:5:2);

end;

procedure kosoz; begin

write('Введите шаг[мм] зубчатого колеса

- ');

readln(p);

write('Введите число зубьев 1-го колеса-');

readln(z1);

write('Введите число зубьев 2-го колеса-');

readln(z2);

clrscr;

me:=p/pi;

re:=0.5*me*sqrt(sqr(z1)+sqr(z2)); writeln('Значение внешнего конусного

расстояния re[мм] = ',re:7:4); writeln;

b:=0.3*re;

rm:=re-0.5*b;

writeln('Значение среднего конусного расстояния rm[мм] = ',rm:7:4);

writeln;

dl1:=arctan(z1/z2); dl2:=pi/2-dl1;

writeln('Углы делительных конусов:'); writeln(' dl1[рад] = ',dl1:7:4); writeln(' dl2[рад] =

',dl2:7:4);writeln;

de1:=me*z1;

de2:=me*z2;

writeln('Внешний делительный диаметр

:');

writeln(' de1[мм] = ',de1:7:4); writeln(' de2[мм] = ',de2:7:4); writeln;

ha1:=1;

ha:=ha1*me;

dae1:=de1+2*ha*cos(dl1);

dae2:=de2+2*ha*cos(dl2); writeln('Внешний диаметр вершин :'); writeln(' dae1[мм] = ',dae1:7:4); writeln(' dae2[мм] = ',dae2:7:4); writeln;

c:=0.2;

he:=(2*ha1+c)*me;

writeln('Внешняя высота зуба he[мм] = ',he:7:4);writeln;

b:=sqrt(re*re-sqr(de1/2)); writeln('Расчетное расстояние b[мм] =

',b:7:4);writeln;

u:=z2/z1; writeln('Передаточное число в

конической передаче u = ',u:7:4);

 

end;

 

 

 

 

 

procedure cherv;

 

 

 

begin

 

 

 

 

clrscr;

 

 

 

 

write('Введите шаг[мм] = ');

 

 

readln(p);clrscr;

 

 

 

m:=p/pi;

 

 

 

 

writeln('Значение модуля зацепления в

осевом сечении червяка m =',m:6:3);

 

 

writeln('ряд 1: 0.10; 0.125; 0.16; 0.2;

0.25; 0.315; 0.4; 0.5;');

 

 

 

writeln('

0.63; 0.8 ; 1.0 ; 1.25;

1.6;

2.0;

2.5; 3.15;');

 

 

 

writeln('

4.0; 5.0');writeln;

 

 

writeln('ряд 2: 0.12; 0.15; 0.3;

 

0.6;1.5;3.0;3.5;4.0;5.0;');writeln;

 

 

writeln('Вычесленное значение модуля

 

m[мм]= ',m:5:3);writeln;

 

 

 

writeln('Выберете стандартный модуль ');

 

write('используя ряд 1 или ряд 2 -');

 

 

readln(m);

 

 

 

 

write('Введите число зубьев колеса =');

 

readln(z2);

 

 

 

 

write('Введите число витков червяка =');

 

readln(z1);

 

 

 

 

writeln('

 

Табл.1

');

 

 

 

 

 

 

writeln('------------------------------

 

 

 

------------------------

 

 

');

 

 

 

writeln('!

m

!

q

!

z1

 

!');

 

 

 

writeln('------------------------------

 

 

 

------------------------

 

 

');

 

 

 

writeln('!

1.0

!

16

!

1

 

!');

 

 

writeln('!

!

20

!1;2;4 !'); writeln('------------------------------

------------------------

 

');

 

 

writeln('!

1.25

!

 

12.5;16;20

!

1;2;4

!');

 

writeln('------------------------------

 

 

 

------------------------

 

');

 

 

writeln('!

1.6

!

 

10;12.5;16;20

!

1;2;4

!');

 

writeln('------------------------------

 

 

 

------------------------

 

');

 

 

writeln('!

2.0;2.5;3.15 !

 

8;10;12.5;16

!

1;2;4

!');

 

writeln('!

 

!

20

!

 

!');

 

 

writeln('------------------------------

 

 

 

------------------------

 

');

 

 

writeln('Выберете коэффициенты диаметра червяка q из табл.1');

writeln('в соответствии с модулем m и z1

');

write('q = '); readln(q);clrscr; ha1:=1.0;

c:=0.2;

hf1:=ha1+c;

d1:=m*q;

da1:=d1+2*ha1*m; df1:=d1-2*(ha1+c)*m;

writeln('Значение делительного диаметра червяка d1[мм] = ',d1:8:3);

writeln('Значение диаметра вершин червяка da1[мм] = ',da1:8:3);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]