Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
clear all clc close all AB = 0.15; BC = 0.35; CD = 0.30; CE = 0.15; xA=0; yA=0; xD=0.3; yD=0.3; incremento = 0; for phi=0:pi/10:2*pi, xB=AB*cos(phi); yB=AB*sin(phi); eqnC1='BC^2=(xC-xB)^2+(yC-yB)^2'; eqnC2='CD^2=(xC-xD)^2+(yC-yD)^2'; solC=solve(eqnC1,eqnC2,'xC','yC'); xCposicao=eval(solC.xC); yCposicao=eval(solC.yC); xC1=xCposicao(1); xC2=xCposicao(2); yC1=yCposicao(1); yC2=yCposicao(2); if xC2 < xD xC = xC2; yC = yC2; else xC = xC1; yC = yC1; end eqnE1='(xE-xC)^2 + (yE-yC)^2=CE^2 '; eqnE2='(yC-yD)/(xC-xD)=(yE-yC)/(xE-xC)'; solE = solve(eqnE1, eqnE2, 'xE, yE'); xEpositions = eval(solE.xE); yEpositions = eval(solE.yE); xE1 = xEpositions(1); xE2 = xEpositions(2); yE1 = yEpositions(1); yE2 = yEpositions(2); if xE1 < xC xE = xE1; yE=yE1; else xE = xE2; yE=yE2; end incremento = incremento + 1; xCmedio(incremento)= (xB+xC)/2; yCmedio(incremento)= (yB+yC)/2; subplot(2,1,1) plot([xA,xB],[yA,yB],'b-',[xB,xC],[yB,yC],'r-',... [xD,xC],[yD,yC],'y-',[xC,xE],[yC,yE],'b-') hold on xlabel('x(m)') ylabel('y(m)') grid axis([-0.2 0.35 -0.25 0.7]) title('Posição do mecanismo de 4 barras') text(xCmedio,yCmedio,'C2') end subplot(2,1,2) plot(xCmedio,yCmedio,'r-o') xlabel('x(m)') ylabel('y(m)') title('Caminho do ponto médio da barra BC') grid
Compartilhar