Matlab_Simulink:規範モデルに基づくPIDゲイン調整_fminsearch利用(無料公開)

実現したいこと

  • 規範モデル G_{ref}(s)を用いてPIDゲインを最適化(fminsearch利用)
  •  y(t) y_{ref}(t)に追従するようにPIDゲインを算出
  • Simulink内で評価値を計算
  • Simulink:Goto/Fromブロックを用いて信号を整理する

上記のppt素材は下記を参照:

ppt素材:PID制御系関連(無料公開) - 某国立大学教員の本気ブログ

Matlabのバージョン

Matlab2021a
※ダウンロード形式として過去のバージョンも用意

必要なtoolbox

ダウンロードURL

【ダウンロードリンク】
PIDゲイン最適化(規範モデル_fminsearch) - Google ドライブ 

※ご利用中のMatlabバージョンのフォルダをダウンロードしてください。
 例:2021aバージョンであれば,上記リンクの「2021a」を選択
※上記プログラムの利用で生じたトラブルは一切の責任を負いかねます

フォルダ構成

上記ダウンロードし展開。
(下記のようなフォルダ構成になっていることを確認)

※gfigure.m:複数グラフを画面上に並び替える関数。詳細は下記の記事参照。

Matlab:グラフを番号順に画面上に自動で並び替え(マウス作業からの解放)

実行方法

「Main_fmin_RefModel_2ndOrderSystem.m」を実行
Simulinkを閉じると計算は速くなります。

まとめ・考察

 G_{ref}(s)に含まれるパラメータ \zeta_{ref},  \omega_{n_{ref}}を任意に設定することで,自由に参照軌道 y_{ref}(t)を算出することができ,その軌道に追従するようなPIDゲインを算出することができた.次回はfminsearchを利用せず,数学的にPIDゲインを算出する方法について執筆する.(fminsearchを利用しないことで計算負荷が軽くなり,マイコンなどにも実装が用意となる)

併せて確認推奨の過去記事

forfree.hatenablog.jp