Advertisement
Guest User

Untitled

a guest
Nov 21st, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 1.24 KB | None | 0 0
  1. clc;
  2. clear all;
  3. close all;
  4.  
  5. 'Déclaration de num et den'
  6.  
  7. num = [0 2 1]
  8. den =[1 7 8 1]
  9.  
  10. 'Représentation état compagne'
  11.  
  12. [A, B, C, D] = tf2ss(num, den)
  13.  
  14. 'Construction du système'
  15.  
  16. sys = ss(A,B,C,D)
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28. 'détermination des valeurs propres'
  29.  
  30. D= eig(A)
  31.  
  32. 'détermination des poles et des zéros de la fonction de transfert'
  33. Z = roots(num)
  34. P = roots(den)
  35.  
  36. 'Methode de Lyapunov pour savoir si le système est stable'
  37. Q = eye(3);
  38. L = lyap(A,Q)
  39.  
  40. 'On construit G0(P)'
  41.  
  42. num1 = [0 2 1]
  43. den1 =[1 7 6 0]
  44.  
  45. 'Représentation état compagne G0(P)'
  46.  
  47. [A1, B1, C1, D1] = tf2ss(num1, den1)
  48.  
  49. 'Construction du système G0(P)'
  50.  
  51. sys1 = ss(A1,B1,C1,D1)
  52.  
  53. 'Création des diagrammes'
  54.  
  55. %  bode(sys1)
  56. %  grid
  57. % nyquist(sys1)
  58. % grid
  59. % nichols(sys1)
  60. % grid
  61.  
  62. 'Calcul de la marge de gain, phase, et les pulsations associées'
  63.  
  64. [Gm,Pm,Wcg,Wcp]=margin(sys1)
  65.  
  66. 'Système obsevable? Commandable? Critère de Kalman'
  67. 'En BO'
  68. Qc1=ctrb(sys1)
  69. rank(Qc1)
  70. Qo1=obsv(sys1)
  71. rank(Qo1)
  72.  
  73. 'En BF'
  74. Qc=ctrb(sys)
  75. rank(Qc)
  76. Qo=obsv(sys)
  77. rank(Qo)
  78.  
  79. 'Reponse impulsionnel et a l échelon'
  80. 'En BF'
  81.  
  82. % step(sys)
  83. % impulse(sys)
  84.  
  85. 'En BO'
  86.  
  87. % step(sys1)
  88. % impulse(sys1)
  89.  
  90.  
  91. u = zeros(1, 3001);
  92. u(1000:2000) = 1;
  93. t = 0:3000
  94. lsim(sys,u,t)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement