Sunteți pe pagina 1din 3

Universitatea POLITEHNICA din Bucuresti Student: Nutu Bogdan

Facultatea de Inginerie Mecanica si Mecatronica Grupa: 541B sgr2


Departamentul de Mecatronica si Mecanica de Precizie Data efectuarii: 28.04.2021
Laboratorul de Sisteme Ultraprecise de Mecanica Fina

Laborator Nr: 8
Reprezentare video a unui mecanism biela-manivela in Matlab

Enunţ:
Sa se ia programul din laboratorul 7 si sa se creeze un fisier video folosind functiile movie,
getframe, writeVideo si videoWriter.

Program:
%Nutu Bogdan 541B Subgrupa2
R=25;
l=80;
e=10;
pas=1;
fiG=0:pas:360;
n=length(fiG);
r=1;
lp=18;
hp=10;

v=VideoWriter("bme");
v.Quality=100;
v.FrameRate=60;
open(v);

for j = 1:n
clf
figure(1)
;
axis([-30 160 -30 30]);
grid on;
xA(j) = 0;
yA(j) = 0;
xB(j) = R .* cos(fi);
yB(j) = R .* sin(fi);
xC(j) = R .* cos(fi) + (sqrt(l^2 - (R .* sin(fi) +
e).^2));
yC(j) = -e;
set(gcf, 'Position', [200, 300, 1300, 400])
xlabel('x \bf[mm]');
ylabel('y \bf[mm]');
title('\bf Mecanism biela-manivela')
text(50, 20, ['\phi =' num2str(fiG(j)) '\bf\circ']);

cerc = rectangle('Position', [-25 -25 50 50],


'Curvature', [1, 1]);
patina = rectangle('Position', [xC(j)-lp/2, yC(j)-
hp/2, lp, hp],'Curvature', [0, 0]);
biela = line([xB(j) xC(j)], [yB(j) yC(j)]);
manivela = line([xA(j) xB(j)], [yA(j) yB(j)]);
set(cerc, 'LineStyle', '--');
set(patina, 'FaceColor', 'g')
set(manivela, 'Color', 'b', 'LineWidth', 3);
set(biela, 'Color', 'r', 'LineWidth', 3);

articA = rectangle('Position', [xA(j)-r, yA(j)-r, 2*r,


2*r], 'Curvature', [1, 1]);
articB = rectangle('Position', [xB(j)-r, yB(j)-r, 2*r,
2*r], 'Curvature', [1, 1]);
articC = rectangle('Position', [xC(j)-r, yC(j)-r, 2*r,
2*r], 'Curvature', [1, 1]);
set(articA, 'LineWidth', 5);
set(articB, 'LineWidth', 5);
set(articC, 'LineWidth', 5);

M=moviein(n);
M(j)=getframe(gcf);
writeVideo(v,M(j));

end

close(v)
Poze:

S-ar putea să vă placă și