一般的な場合の1次遅れの伝達関数
前回、具体的な伝達関数を使って、1次遅れの伝達関数のボード線図を書いて見ました。
では、一般的な場合はどうかと言うことを考えて見たいと思います。
さて、一般的な場合というのはどういうことかというと、1次遅れの伝達関数をゲインKと時定数\tauというものを使って記述するのが、普通のようです。
以下のようになります。
\begin{equation} G(s)=\frac{K}{\tau s + 1} \end{equation}
周波数伝達関数
さて、この式からボード線図を描くのに必要なゲインと位相を求めましょう。
まずsにj \omegaを代入します。そして分母を有理化します。
\begin{equation} G(j \omega)=\frac{K}{1 + \tau \omega j} \frac{1- \tau \omega j}{1-\tau \omega j} = \frac{K(1 - \tau \omega j)}{1+(\tau \omega)^2} \end{equation}
ゲインの計算
ゲインを求めると
\begin{equation} |G(j \omega)|=\sqrt{\frac{K^2 + (-K \tau \omega )^2}{\{1+(\tau \omega)^2\}^2}} =\sqrt{ \frac{K^2 \{1 + (\tau \omega)^2 \}}{\{1+(\tau \omega)^2\}^2} } =\frac{K \sqrt{1+ (\tau \omega)^2}}{ 1 + (\tau \omega)^2} \end{equation}
\begin{equation} \begin{split} 20 \log |G(j \omega)|&=20 \log \frac{K \sqrt{1+ (\tau \omega)^2}}{ 1 + (\tau \omega)^2}\\ &=20 \log K + 10 \log \{1 + (\tau \omega)^2 \} - 20 \log \{1 + (\tau \omega)^2 \}\\ &=20 \log K - 10 \log \{1 + (\tau \omega)^2 \} \end{split} \end{equation}
簡単になりましたね。
位相の計算
位相を求めましょう。
\begin{equation} \angle |G(j \omega)| = \tan^{-1} ( -\tau \omega)= - \tan^{-1} \tau \omega \end{equation}
数値計算
#ここからソース
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import numpy as np | |
import matplotlib.pyplot as plt | |
tau = 2.0 | |
K=5 | |
omega=np.logspace(-2,2,100) | |
gain=20*np.log10(K) -10*np.log10(1+(tau*omega)**2) | |
phase=-np.arctan(tau*omega)*180/np.pi | |
plt.subplot(2,1,1) | |
plt.plot(omega, gain,'-') | |
plt.xscale('log') | |
plt.grid(which='major') | |
plt.grid(which='minor') | |
plt.ylabel('Mag[dB]') | |
plt.xlabel('Freq[rad/s]') | |
plt.subplot(2,1,2) | |
plt.plot(omega, phase, '-') | |
plt.xscale('log') | |
plt.grid(which='major') | |
plt.grid(which='minor') | |
plt.ylabel('phase[deg]') | |
plt.xlabel('Freq[rad/s]') | |
plt.show() |
0 件のコメント:
コメントを投稿