You are on page 1of 10

Задача 1: За механизмот прикажан на сликата да се определат брзините и

забрзувањата во кинематичките парови, ако е познато:


n1=18vrt/s, lAB=0,2m,
lBC=1m, lCD=0, 5m,
lEF=0,75m, lCE=0,6m,
lBE=0,4m,
a=0,8m, b=0,9m,
φ=30[°],
T=4[s].

1
M-file, програмирањето започнува со наредбите:
clear
clc
close all
Ги внесуваме познатите параметри:
AB=0.2;
BC=1;
CD=0.5;
EF=0.75;
CE=0.6;
BE=0.4;
a=0.8;
b=0.9;
phi = pi/6;

Положба на кинематичкиот пар А:

xA=0;
yA=0;

2
Положба на кинематичкиот пар B:

xB=-AB*cos(phi);
yB=AB*sin(phi);

Положба на кинематичкиот пар E:

xD=a;
yD=0;

Oпределување на положбата на кинематичкиот пар C:

ravC1 = '(xCsol - xB)^2 + (yCsol - yB)^2 = BC^2';


ravC2 = '(xCsol - xD)^2 + (yCsol - yD)^2 = CD^2';
solC = solve(ravC1, ravC2, 'xCsol, yCsol');
xCpolozbi = eval(solC.xCsol);
yCpolozbi = eval(solC.yCsol);
xC1 = xCpolozbi(1);
xC2 = xCpolozbi(2);
yC1 = yCpolozbi(1);
yC2 = yCpolozbi(2);

3
Oпределување на точната положба на кинематичкиот пар C:

if xC1 > xB xC = xC1; yC=yC1;


else xC = xC2; yC=yC2;
end

Oпределување на аголот кој правецот на членот 2 го зафаќа со


x-оската:

phi2 = atan((yC-yB)/(xC-xB));

Положба на кинематичкиот пар E:

xE = xB+BE*cos(phi2);
yE = yB+BE*sin(phi2);
Oпределување на положбата на кинематичкиот пар F:

yF=b;
ravF = '( xFsol - xE )^2 + ( yF - yE )^2 = EF^2';
solF = solve(ravF, ‘xFsol');
xF1=eval(solF(1)); xF2=eval(solF(2));

4
Oпределување на точната положба на кинематичкиот пар F:

if xF1 > xE xF = xF1;


else xF = xF2;
end
Печатење на вредностите:

fprintf(‘Добиени вредности \n\n’)


fprintf('xA = %g (m)\n', xA)
fprintf('yA = %g (m)\n', xA)
fprintf('xB = %g (m)\n', xB)
fprintf('yB = %g (m)\n', yB)
fprintf('xC = %g (m)\n', xC)
fprintf('yC = %g (m)\n', yC)
fprintf('xD = %g (m)\n', xD)
fprintf('yD = %g (m)\n', yD)
fprintf('xE = %g (m)\n', xE)
fprintf('yE = %g (m)\n', yE)
fprintf('xF = %g (m)\n', xF)
fprintf('yF = %g (m)\n', yF)

5
Испечатени вредности на работниот прозорец (Command Window):

6
Во делот File отвараме нов (New) Model. Понатаму, File / Model
Properties / Model Callbacks / InitFcn, ги внесуваме добиените и познатите
координати на кинематичките парови:

xA = 0;
yA = 0;
xB = -0.173205;
yB = 0.1;
xC = 0.744645;
yC = 0.496926;
xD = 0.8;
yD = 0;
xE = 0.193935;
yE = 0.258771;
xF = 0.58294;
yF = 0.9;

7
Го моделираме Simulink моделот на механизмот:

8
Геометрија на членовите:

Член (Origin position vector [x y z])

CG [(xB- xA)/2 (yB- yA)/2 0] – CS1 ; CS1


CS1 [xA yA 0] – WORLD ; WORLD
Body
CS2 [xB yB 0] – WORLD ; WORLD
CS3 [0 0 0] – CS2 ; CS2
CG [(xC- xB)/2 (yC- yB)/2 0]– CS1 ; CS1
CS1 [xB yB 0] – WORLD ; WORLD
CS2 [xC yC 0] – WORLD ; WORLD
CS3 [xD yD 0] – WORLD ; WORLD
Body1
CS3 [0 0 0] – CS3 ; CS3
CS4 [0 0 0] – CS2 ; CS2
CS5 [0 0 0] – CS3 ; CS3

9
CG [(xD- xC)/2 (yD- yC)/2 0] – CS1 ; CS1
Body2 CS1 [xC yC 0] – WORLD ; WORLD
CS2 [xD yD 0] – WORLD ; WORLD
CG [(xE- xF)/2 (yE- yF)/2 0]– CS1 ; CS1
Body3 CS1 [xE yE 0] – WORLD ; WORLD
CS2 [xF yF 0] – WORLD ; WORLD
CG [(xF- xE)/2 (yF- yE)/2 0] – CS1 ; CS1
Body4 CS1 [xF yF 0] – WORLD ; WORLD
CS2 [xF yF 0] – WORLD ; WORLD

Лежиште (Location [x y z])

Ground [xA yA 0]
Ground1 [xD yD 0]
Ground2 [xF yF 0]

10

You might also like