Advertisement
Ostu

Untitled

Jun 15th, 2021
320
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 0.78 KB | None | 0 0
  1. %% Dane
  2. pyp=1
  3. pxp=1
  4. pyk=2
  5. pxk=-1
  6. tk=10;
  7. tp=0
  8. L1=5.8;
  9. L2=1;
  10. VP=[-1;0]
  11. VK=[0;1]
  12.  
  13. %% p na q
  14. q2p=acos((pyp^2+pxp^2-L1^2-L2^2)/(2*L1*L2))
  15. q1p=asin((L2*sin(q2p))/(sqrt(pxp^2+pyp^2))+atan(pxp/pyp))
  16. QP=[q1p;q2p]
  17.  
  18. q2k=acos((pyk^2+pxk^2-L1^2-L2^2)/(2*L1*L2))
  19. q1k=asin((L2*sin(q2k))/(sqrt(pxk^2+pyk^2))+atan(pxk/pyk))
  20. QK=[q1k;q2k]
  21.  
  22. %% Jakobiany
  23. JP=[-L1*sin(q1p)-L2*sin(q1p+q2p) -L2*sin(q1p+q2p); L1*cos(q1p)+L2*cos(q1p+q2p) L2*cos(q1p+q2p)]
  24.  
  25. QPd=inv(JP)*VP
  26. %% Wspolczynniki
  27. a0=QP;
  28. a1=QPd;
  29. a2=3/tk^2*(QK-QP)
  30. a3=-2/tk^3*(QK-QP)
  31. t=0:0.01:tk;
  32. y=a0+a1*t+a2*t.^2+a3*t.^3;
  33. figure(1)
  34. plot(t,y);
  35.  
  36. %% Trajektoria
  37. figure(2)
  38. for t=0:0.01:tk
  39. y=a0+a1*t+a2*t.^2+a3*t.^3;
  40. PX=L1*cos(y(1,1))+L2*cos(y(1,1)+y(2,1));
  41. PY=L1*sin(y(1,1))+L2*sin(y(1,1)+y(2,1));
  42. plot(PX,PY,'r.')
  43. hold on
  44. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement