Advertisement
PaweU

automatyka2

Mar 6th, 2020
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.50 KB | None | 0 0
  1. k1 = 0.1;
  2. T1 = 2;
  3.  
  4. k2 = 0.5;
  5. T2 = 1;
  6.  
  7. % obiekt inercyjny I rzędu
  8.  
  9. licz_1 = [0, k1];
  10. mian_1 = [T1, 1];
  11.  
  12. licz_2 = [0, k2];
  13. mian_2 = [T2, 1];
  14.  
  15. [y_1, x_1, czas_1] = step(licz_1, mian_1)
  16. [y_2, x_2, czas_2] = step(licz_2, mian_2)
  17. plot(czas_1, y_1, czas_2, y_2)
  18. title("Obiekt inercyjny I rzędu, odp. skokowa")
  19. legend(['k=' num2str(k1) ', T=' num2str(T1)], ['k=' num2str(k2) ', T=' num2str(T2)]);
  20.  
  21.  
  22. licz_1 = [0, k1];
  23. mian_1 = [T1, 1];
  24.  
  25. licz_2 = [0, k2];
  26. mian_2 = [T2, 1];
  27.  
  28. [y_1, x_1, czas_1] = impulse(licz_1, mian_1)
  29. [y_2, x_2, czas_2] = impulse(licz_2, mian_2)
  30. figure()
  31. plot(czas_1, y_1, czas_2, y_2)
  32. title("Obiekt inercyjny I rzędu, odp. impulsowa")
  33. legend(['k=' num2str(k1) ', T=' num2str(T1)], ['k=' num2str(k2) ', T=' num2str(T2)]);
  34.  
  35.  
  36. ksi = 2;
  37.  
  38. licz_1 = [0, 0, k1];
  39. mian_1 = [T1^2, 2*ksi*T1, 1];
  40.  
  41. licz_2 = [0, k2];
  42. mian_2 = [T1^2, 2*ksi*T1, 1];
  43.  
  44. [y_1, x_1, czas_1] = step(licz_1, mian_1)
  45. [y_2, x_2, czas_2] = step(licz_2, mian_2)
  46. figure()
  47. plot(czas_1, y_1, czas_2, y_2)
  48. title(strcat("Obiekt inercyjny II rzędu (oscylacyjny), odp. skokowa, ksi =", num2str(ksi)))
  49. legend(['k=' num2str(k1) ', T=' num2str(T1)], ['k=' num2str(k2) ', T=' num2str(T2)]);
  50.  
  51.  
  52. licz_1 = [0, 0, k1];
  53. mian_1 = [T1^2, 2*ksi*T1, 1];
  54.  
  55. licz_2 = [0, k2];
  56. mian_2 = [T1^2, 2*ksi*T1, 1];
  57.  
  58. [y_1, x_1, czas_1] = impulse(licz_1, mian_1)
  59. [y_2, x_2, czas_2] = impulse(licz_2, mian_2)
  60. figure()
  61. plot(czas_1, y_1, czas_2, y_2)
  62. title(strcat("Obiekt inercyjny II rzędu (oscylacyjny), odp. impulsowa, ksi =", num2str(ksi)))
  63. legend(['k=' num2str(k1) ', T=' num2str(T1)], ['k=' num2str(k2) ', T=' num2str(T2)]);
  64.  
  65. Ti = 1;
  66. licz_1 = [0, 0, k1];
  67. mian_1 = [Ti*T1, Ti, 0];
  68.  
  69. licz_2 = [0, k2];
  70. mian_2 = [Ti*T2, Ti, 0];
  71.  
  72.  
  73. [y_1, x_1, czas_1] = step(licz_1, mian_1)
  74. [y_2, x_2, czas_2] = step(licz_2, mian_2)
  75. figure()
  76. plot(czas_1, y_1, czas_2, y_2)
  77. title(strcat("Obiekt całkujący rzeczywisty, odp. impulsowa, Ti =", num2str(Ti)))
  78. legend(['k=' num2str(k1) ', T=' num2str(T1)], ['k=' num2str(k2) ', T=' num2str(T2)]);
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87. #####################
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94. clear
  95.  
  96. k1 = 0.1;
  97. T1 = 2;
  98.  
  99. k2 = 0.5;
  100. T2 = 1;
  101.  
  102. % obiekt inercyjny I rzędu
  103.  
  104. licz_1 = [0, k1];
  105. mian_1 = [T1, 1];
  106.  
  107. licz_2 = [0, k2];
  108. mian_2 = [T2, 1];
  109.  
  110. bode(licz_1, mian_1)
  111. hold on
  112. bode(licz_2, mian_2)
  113. legend(['k=' num2str(k1) ', T=' num2str(T1)], ['k=' num2str(k2) ', T=' num2str(T2)]);
  114.  
  115.  
  116. figure()
  117. nyquist(licz_1, mian_1);
  118. hold on
  119. nyquist(licz_2, mian_2);
  120. legend(['k=' num2str(k1) ', T=' num2str(T1)], ['k=' num2str(k2) ', T=' num2str(T2)]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement