【python-control】ボード線図を描く

当記事では、Python用制御工学モジュール「python-control」でボード線図を描く方法ついて紹介します。

ボード線図とは

ボード線図とは、伝達関数の周波数特性を表した図(ゲイン線図と位相線図)です。
Python-controlの「control.bode(sys)」メソッドを用いると、Matlabのbode関数のようにシステムのボード線図を描画できます。

種別 内容
原理詳細 【制御理論】ボード線図
参考文献 ■python-controlドキュメント:bodeメソッドの使い方 ■Matlabドキュメント:bode関数の使い方

※python-controlはMatlab風ライブラリなので、Matlabの資料が役に立ちます

サンプルコード

サンプルプログラムのソースコードです。

from control.matlab import *
from matplotlib import pyplot as plt
    
# 伝達関数のパラメータ
num = [2, 5, 1]     # 分子の係数
den = [1, 2, 3]     # 分母の係数
sys = tf(num, den)  # 伝達関数モデルの作成
bode(sys)           # ボード線図のプロット

plt.show()

以下の伝達関数のボード線図を描きます。

(1) \begin{eqnarray*} G(S)=\frac{2s^2+5s+1}{ s^2+2s+3} \end{eqnarray*}

実行結果

サンプルプログラムの実行結果です。

関連ページ
1 Pythonで制御工学シミュレーション
2 Python入門 基礎文法とサンプル集
関連記事