Advertisement
Savelyev_Vyacheslav

grafKulaga

Jun 2nd, 2022
873
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.34 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # coding: utf-8
  3.  
  4. # In[75]:
  5.  
  6.  
  7. import math
  8. Xd = 1.8
  9. Xq = 1
  10. Xid = 0.3
  11. Ug = 1
  12. s = 1
  13. cosfi = 0.85
  14. # naiti Id Iq Eq Eiq EQ
  15. #Xd = 2.04
  16. #Xq = 0.189
  17. #Xid = 0.271
  18. #Ug = 1
  19. #s = 1
  20. #cosfi = 0.8
  21.  
  22.  
  23. # In[76]:
  24.  
  25.  
  26. Pg = s * cosfi
  27. Qg = s * (1-cosfi*cosfi)**0.5
  28. EQ = ( (Ug + Qg*Xq/Ug)**2 + (Pg*Xq/Ug)**2 )**0.5
  29.  
  30.  
  31. # In[77]:
  32.  
  33.  
  34. z = Pg*Xq/(Ug**2+Qg*Xq)
  35. Lamda = math.atan(z)/math.pi*180
  36. print(Lamda)
  37.  
  38.  
  39. # In[78]:
  40.  
  41.  
  42. Id =( Ug*math.cos(Lamda/180*math.pi) - EQ) / Xq
  43. Iq = U*math.sin(Lamda/180*math.pi) / Xq
  44. Eq = EQ - (Xd - Xq)*Id
  45. Eiq = EQ - (Xid - Xq)*(Id)
  46.  
  47.  
  48. # In[79]:
  49.  
  50.  
  51. print(Pg,Qg,EQ,Lamda,Id, Iq, Eq, Eiq)
  52.  
  53.  
  54. # In[94]:
  55.  
  56.  
  57. import numpy as pn
  58. import matplotlib.pyplot as plt
  59. import seaborn as sns
  60.  
  61.  
  62. # In[95]:
  63.  
  64.  
  65. sns.set()
  66.  
  67.  
  68. # In[160]:
  69.  
  70.  
  71. ss=-0.01
  72.  
  73. x=-Eq*math.cos(Lamda); y=-Eq*math.sin(Lamda);  plt.text(x, y, "Eq")
  74. plt.quiver(0,0,x,y, scale_units='xy', angles='xy', scale=1, color='r')
  75.  
  76. x=-EQ*math.cos(Lamda); y=-EQ*math.sin(Lamda);  plt.text(x, y, "EQ")
  77. plt.quiver(0,0,x,y, scale_units='xy', angles='xy', scale=1, color='g')
  78.  
  79. x = Ug; y = 0; plt.text(x*1, y*1.3, "U")
  80. plt.quiver(0,0,x,y, scale_units='xy', angles='xy', scale=1, color='b')
  81. x = Ug*math.cos(Lamda)**2; y = Ug*math.cos(Lamda)*math.sin(Lamda);  plt.text(x*0.8, y*1.3, "Uq")
  82. plt.quiver(0,0,x,y, scale_units='xy', angles='xy', scale=1, color='b')
  83. x = Ug*math.cos(math.pi/2 - Lamda)*math.sin(Lamda); y =- Ug*math.cos(math.pi/2-Lamda)*math.cos(Lamda);  plt.text(x*0.8, y*1.3, "Ud")
  84. plt.quiver(ss,ss,x+ss,y+ss, scale_units='xy', angles='xy', scale=1, color='b')
  85.  
  86.  
  87. I = (Iq**2+Id**2)**0.5
  88. x=-Iq*math.cos(Lamda); y=-Iq*math.sin(Lamda);  plt.text(x*0.8, y*1.3, "Iq")
  89. plt.quiver(ss,ss,x+ss,y+ss, scale_units='xy', angles='xy', scale=1, color='y')
  90. x=Id*math.sin(Lamda); y=-Id*math.cos(Lamda);  plt.text(x*0.8, y*1.3, "Id")
  91. plt.quiver(0,0,x,y, scale_units='xy', angles='xy', scale=1, color='y')
  92. #y=I*(1-cosfi*cosfi)**0.5*math.cos(Lamda); x=I*cosfi;  plt.text(x, y, "I")
  93. #plt.quiver(0,0,x,y, scale_units='xy', angles='xy', scale=1, color='y')
  94. x = Id*math.sin(Lamda)-Iq*math.cos(Lamda); y=-Iq*math.sin(Lamda)-Id*math.cos(Lamda);  plt.text(x, y, "I")
  95. plt.quiver(0,0,x,y, scale_units='xy', angles='xy', scale=1, color='y')
  96.  
  97.  
  98. plt.title("Иллюстративная диаграмма синхронной машины")
  99. plt.xlim(-0.1,2)
  100. plt.ylim(-1,2)
  101. plt.show
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement