Pythonでフィードバック結合のシミュレーションをする。
\begin{align}
P(s)=\frac{\omega_{n}^2 }{s^2 + 2 \zeta \omega_{n} s + \omega_{n}^2}
\end{align}
\begin{align}
G(s)=\frac{P (s) }{1+P(s)}
\end{align}
コードは以下
from control.matlab import *
import matplotlib.pyplot as plt
s = tf('s')
zeta = 0.5
omega = 1
P = omega ** 2 / (s ** 2 + 2 * zeta * omega * s + omega ** 2)
G = feedback(P, 1)
t, y = step(G)
plt.plot(y, t, 'k-')
plt.grid(color='k', linestyle='dotted', linewidth=1)
plt.show()
コメント