Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [sR1,thetaR1,sR,thetaR]=FunzioneRegolazione(x,dtheta,a,h,r3,r,dy,dx)
- %phi = linspace(0,2*pi,360); % Angolo di rotazione delle camma
- %h=10; % Alzata massima
- %r3=20; r=15; dy=10; dx=20;
- %a=[5:5:45] % Distanza tra Offset e camma
- for i=1:length(x) % Legge d'alzata
- if (pi/2+deg2rad(dtheta)<=x(i)) && (x(i)<=pi+deg2rad(dtheta))
- s(i)=-h+h/pi*(((pi*(x(i)-deg2rad(dtheta)))/(pi/2))-1/2*sin(2*pi*(x(i)-deg2rad(dtheta))/(pi/2)));
- elseif (pi+deg2rad(dtheta)<=x(i)) && (x(i)<=(3/2)*pi+deg2rad(dtheta))
- s(i)=3*h-h/pi*(((pi*(x(i)-deg2rad(dtheta)))/(pi/2))-1/2*sin(2*pi*(x(i)-deg2rad(dtheta))/(pi/2)));
- else
- s(i)=0;
- end
- end
- theta=(asin((-dy+r3-s)/r));
- deltatheta=theta(1)-theta;
- thetaR=theta(1)-deltatheta+deg2rad(dtheta);
- dy1=r*sin(thetaR(1));
- s11=-r*sin(thetaR)-dy1+r3;
- sR=-s11(1)+s11;
- for i=1:length(x)
- for j=1:length(a) % Legge d'alzata
- if (pi/2+deg2rad(a(j))<=x(i)) && (x(i)<=pi+deg2rad(a(j)))
- s1(i,j)=-h+h/pi*(((pi*(x(i)-deg2rad(a(j))))/(pi/2))-1/2*sin(2*pi*(x(i)-deg2rad(a(j)))/(pi/2)));
- elseif (pi+deg2rad(a(j))<=x(i)) && (x(i)<=(3/2)*pi+deg2rad(a(j)))
- s1(i,j)=3*h-h/pi*(((pi*(x(i)-deg2rad(a(j))))/(pi/2))-1/2*sin(2*pi*(x(i)-deg2rad(a(j)))/(pi/2)));
- else
- s1(i,j)=0;
- end
- theta1(i,j)=(asin((-dy+r3-s1(i,j))/r));
- deltatheta1(i,j)=theta1(1)-theta1(i,j);
- thetaR1(i,j)=theta1(1)-deltatheta1(i,j)+deg2rad(a(j));
- dy11(i,j)=r*sin(thetaR1(1));
- s111(i,j)=-r*sin(thetaR1(i,j))-dy11(i,j)+r3;
- sR1(i,j)=+s111(i,j)-s111(1);
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement