Реферат: Механізми - Refy.ru - Сайт рефератов, докладов, сочинений, дипломных и курсовых работ

Механізми

МІНІСТЕРСТВО ОСВІТИ ТА НАУКИ УКРАЇНИ

ДОНБАСЬКА ДЕРЖАВНА МАШИНОБУДІВНА АКАДЕМІЯ


Кафедра ОКММ


Розрахунково-графічна робота

з дисципліни

„Прикладна механіка та основи конструювання”


Виконав:

Перевірив:

ст. гр. АВП 02-1

Кулик Є. В.


м. Краматорськ 2004г.

Зміст


1. Структурний аналіз механізму

2. Лістінг програми комплексного розрахунку механізму

3. Контроль передатних функцій механізму

4. Параметри динамічної моделі механізму

1. Структурний аналіз механізму


Визначити передатні функції механізму зображеного на схемі

Рисунок 1 – Схема механізму


Таблиця 1 –Довжини та координати ланок

LOA,мм LAC,мм LBD,мм LFD,мм LAB, мм XF, мм YF, мм
60 270 150 250 120 40 -170

Структурний аналіз механізму



Рисунок 2 – Схема механізму


Назви ланок:

0 – стояк;

1 – кривошип ;

2 – шатун;

3 – повзун;

4 – шатун;

5 – кривошип.


Розіб’ємо механізм на структурні елементи


Р

група Асура 2-го класу, 2-го виду

исунок 3 – Структурні елементи механізму


Структурна формула будови механізму:

(0-1)→(2-3)2→(4-5)1


Таблиця кінематичних пар

Означення Номери ланок Вид КП
1 0 0-1 однорухома обертальна Початкова ланка
2 А 1-2 однорухома поступальна
3 C 2-3 однорухома поступальна гр. Асура 2-го кл., 2-го виду
4 - 3-0 однорухома поступальна
5 В 2-4 однорухома обертальна
6 D 4-5 однорухома обертальна гр. Асура 2-го кл., 1-го виду
7 F 5-0 однорухома обертальна

Число ступенів вільності механізму.

Для перевірки скористаємося формулою Чебишева. Оскільки механізм має одну ступінь свободи, то ми повинні отримати . У нас кількість ланок , число нижчих кінематичних пар , а вищих кінематичних пар немає: . Згідно за формулою Чебишева

W=3∙n-2∙p1-p2,

W=3∙5-2∙71-0=1,


Так як в результаті розрахунку ми отримали одну ступінь свободи, то помилки допущено не було. Механізм має одну вхідну ланку.


2. Лістінг програми комплексного розрахунку механізму


program Mechan1(output);

uses crt,graph,MPF;

{Описание меток}

{Описание констант}

const m=48;

{Описание типов}

{type massiv=array[1..m] of real; }

{Описание переменных}

var Xo,Yo,Loa,las,FIoa0g,dFi,dFir,lc:real;

var q,jk,Mas:real;

var i,ori,k:integer;

var driver,mode:integer;

var strvar:string;

{Описание массивов}

varFIab_1,FIab_2,FIabg,alfasg,FIng,FIkg,FIoag,Xa,Ya,Xa_1,Ya_1,Xa_2,Ya_2,

Xn_1,

Yn_1,Xn_2,Yn_2 :massiv;

{Описание используемых процедур}

FIn_1,FIn_2,l,Lac,h,lcc,lab,j:real;

{POINT}

var Xb,Yb,Xb_1,Yb_1, Xb_2,Yb_2,Xc,Yc,Xc_1,Yc_1, Xc_2,Yc_2,Mc, Mc_1,Mc_2,Mpc, Mpc_1,Mpc_2:massiv;

var Xd,Yd,Xd_1,Yd_1, Xd_2,Yd_2,:massiv;

var Xsfd,Ysfd,Xsfd_1,Ysfd_1, Xsfd_2,Ysfd_2, Xsbd,Ysbd,Xsbd_1,Ysbd_1, Xsbd_2,Ysbd_2:massiv;

var alfabg,alfacg,alfbdg,alffdg:real;

r:integer;

{ASSUR 1}

var FIbdg,FIbd_1,FIbd_2,FIacg,FIac_1,FIac_2:massiv;

var FIfdg,FIbdr,FIfdr, Fioar,FIfd_1,FIfd_2:massiv;

var Lbd,Lfd,Lsfd,Lsbd:real;

{OPORA}

var Xf,Yf,lf:real;

{ZVENO}

var Xzv,Yzv,FIg,lzv:real;

{РАЗДЕЛ ОПЕРАТОРОВ}

begin

driver:=detect;

{Инициализация графики}

initgraph (driver,mode,'');

SetBKcolor(7);

{SetTextStyle(DefaultFont, HorizDir, 1);}

{Определение передаточных функций}

for i:=1 to m+1 do

begin

cleardevice; {Очистка графического экрана}

str(i:2,strvar);

{ settextstyle(triplexfont,horizdir,2);

} outtextxy(20,20,strvar);

Xo:=0;

Yo:=0;

Loa:=60;

FIoa0g:=3.3;

dFi:=360/m;

dFir:=2*pi/m;

jk:=1;

FIoag[i]:=FIoa0g+dFi*(i-1)*jk;

str(Fioag[i]:8:4,strvar);

{ settextstyle (triplexfont, horizdir, 2);

} outtextxy (20,40, strvar);

q:=1;

Mas:=2;

setcolor(10);

kriv (Xo, Yo, Loa, FIoag[i], q, jk, Mas, Xa[i], Ya[i], Xa_1[i], Ya_1[i], Xa_2[i], Ya_2[i]);

lc:=50;

ori:=1;

opora (Xo,Yo,lc,Mas,q,ori);

{Расчет 1-ой присоединенной группы}

Lac:=270;

lcc:=40;

j:=-1;

Assur2 (Xa[i],Ya[i],Xa_1[i],Ya_1[i],Xa_2[i],Ya_2[i],-360,-120,0,

0,0,0,50,0,0,l,Lac,0,lcc,j,q,Mas, FIabg[i],FIab_1[i],FIab_2[i]);

lab:=120;

r:=5;

Point(Xa[i],Ya[i],Xa_1[i],Ya_1[i],Xa_2[i],Ya_2[i],FIabg[i],FIab_1[i],FIab_2[i],

lab,alfabg,q,Mas,r,Xb[i],Yb[i],Xb_1[i],Yb_1[i], Xb_2[i],Yb_2[i]);

{Расчет 2-ой присоединенной группы}

Lbd:=150;

Lfd:=250;

Assur1 (Xb[i],Yb[i],Xb_1[i],Yb_1[i],Xb_2[i],Yb_2[i],40,-170,0,0,0,

0,Lbd,Lfd,j,q,Mas,Fibdg[i],Fifdg[i],Fibd_1[i],Fifd_1[i],Fibd_2[i],Fifd_2[i]);

Fifdr[i]:=Fifdg[i]/180*pi;

{OPORA}

Xf:=40;

Yf:=-170;

ori:=1;

lf:=50;

Opora (Xf,Yf,lf,Mas,q,ori);

{ZVENO}

Xzv:=-360;

Yzv:=-120;

lzv:=290;

FIg:=50;

Zveno(Xzv,Yzv,FIg,lzv,q,Mas);

Point (Xa[i], Ya[i], Xa_1[i], Ya_1[i], Xa_2[i], Ya_2[i], FIabg[i], FIab_1[i], FIab_2[i],

Lac, alfacg, q, Mas, r, Xc[i], Yc[i], Xc_1[i], Yc_1[i],

Xc_2[i],Yc_2[i]);

Point (Xb[i], Yb[i], Xb_1[i], Yb_1[i], Xb_2[i], Yb_2[i], FIbdg[i], FIbd_1[i], FIbd_2[i],

Lbd,alfbdg,q,Mas,r,Xd[i],Yd[i],Xd_1[i],Yd_1[i],

Xd_2[i],Yd_2[i]);

Lsbd:=Lbd/2;

Point (Xb[i], Yb[i], Xb_1[i], Yb_1[i], Xb_2[i], Yb_2[i], FIbdg[i], FIbd_1[i], FIbd_2[i],

Lsbd,alfbdg,q,Mas,r,Xsbd[i],Ysbd[i],Xsbd_1[i],Ysbd_1[i],

Xsbd_2[i],Ysbd_2[i]);

Lsfd:=-Lfd/2;

Point(Xd[i],Yd[i],Xd_1[i],Yd_1[i],Xd_2[i],Yd_2[i],FIfdg[i],FIfd_1[i],FIfd_2[i],

Lsfd,alfbdg,q,Mas,r,Xsfd[i],Ysfd[i],Xsfd_1[i],Ysfd_1[i],

Xsfd_2[i],Ysfd_2[i]);

readkey;

end;

cleardevice;

closegraph; {Переход в текстовый режим}

Testuniv(m,dFir,Xa,Xa_1,Xa_2,'Xa');

testpf (m,Xa,Xa_1,Xa_2,'Xa');

Grafik(m+1,Fioag,Xa,Xa_1,Xa_2,'Xa','Xa_1','Xa_2');

testpf (m,Ya,Ya_1,Ya_2,'Ya');

Grafik(m+1,Fioag,Ya,Ya_1,Ya_2,'Ya','Ya_1','Ya_2'); }

testpf (m,Xb,Xb_1,Xb_2,'Xb');

Grafik(m+1,Fioag,Xb,Xb_1,Xb_2,'Xb','Xb_1','Xb_2');

testpf (m,Yb,Yb_1,Yb_2,'Yb');

Grafik(m+1,Fioag,Yb,Yb_1,Yb_2,'Yb','Yb_1','Yb_2');

FIbdr[i]:=Fibdg[i]/180*pi;

Fioar[i]:=Fioag[i]/180*pi;

testpf (m,FIbdr,FIbd_1,FIbd_2,'FIbdr');

Grafik(m+1,Fioar,FIbdr,FIbd_1,FIbd_2,'FIbdr','FIbd_1','FIbd_2');

testpf (m,FIfdr,FIfd_1,FIfd_2,'FIfdr');

Grafik(m+1,Fioag,FIfdr,FIfd_1,FIfd_2,'FIfdr','FIfd_1','FIfd_2');

for i:=1 to m+1 do

begin

if FIfd_1[i]>0 then

Mc[i]:=-1000 else

Mc[i]:=0;

Mpc[i]:=Mc[i]*FIfd_1[i];

end;

Grafik(m+1,Fioag,Mc,Mc,Mc,'Mc','',' ');

Grafik(m+1,Fioag,Mpc,Mpc,Mpc,'Mpc','',' ');

testpf (m,Xd,Xd_1,Xd_2,'Xd');

Grafik(m+1,Fioag,Xd,Xd_1,Xd_2,'Xd','Xd_1','Xd_2');

testpf (m,Yd,Yd_1,Yd_2,'Yd');

Grafik(m+1,Fioag,Yd,Yd_1,Yd_2,'Yd','Yd_1','Yd_2'); }

testpf (m,Xsbd,Xsbd_1,Xsbd_2,'Xsbd');

Grafik(m+1,Fioag,Xsbd,Xsbd_1,Xsbd_2,'Xsbd','Xsbd_1','Xsbd_2');

testpf (m,Ysbd,Ysbd_1,Ysbd_2,'Ysbd');

Grafik(m+1,Fioag,Ysbd,Ysbd_1,Ysbd_2,'Ysbd','Ysbd_1','Ysbd_2');

testpf (m,Xsfd,Xsfd_1,Xsfd_2,'Xsfd');

Grafik(m+1,Fioag,Xsfd,Xsfd_1,Xsfd_2,'Xsfd','Xsfd_1','Xsfd_2');

testpf (m,Ysbd,Ysbd_1,Ysbd_2,'Ysbd');

Grafik(m+1,Fioag,Ysfd,Ysfd_1,Ysfd_2,'Ysfd','Ysfd_1','Ysfd_2');

testpf (m,Xc,Xc_1,Xc_2,'Xc');

Grafik(m+1,Fioag,Xc,Xc_1,Xc_2,'Xc','Xc_1','Xc_2');

testpf (m,Yc,Yc_1,Yc_2,'Yc');

Grafik(m+1,Fioag,Yc,Yc_1,Yc_2,'Yc','Yc_1','Yc_2');

end.

3. Контроль передатних функцій механізму




Дані Pascal Дані AutoCad
AX 19.732 19.732
AY 56.6626 56.6626
BX -98.8089 -98.8099
BY 38.0063 38.0063
CX -246.985 -246.9851
CY 14.6860 14.685
DX -192.806 -192.8065
DY -78.8889 -78.8895

Координати точок та кути ланок, отримані графічно, порівнювали з розрахованими за допомогою розробленої програми. Контроль передатніх функцій 1-го та 2-го порядку (ПФ1 та ПФ2) виконали за допомогою процедури Testpf.pas, яка базується на порівнянні результатів, отриманих аналітичним та чисельним методами.

4. Параметри динамічної моделі механізму


Рисунок 4 – Зовнішні сили, діючи на механізм


Відмітимо центри мас ланок механізму і усі зовнішні сили, що діють на нього

Визначимо МПС, ІП', ІП":


МПС=G2y∙yS2'+G3y∙yC'+G4y∙yC'+G5y∙yS5'+MC∙∙φ;