MATLAB,Python,Scilab,Julia比較 その72【PID制御①】

MATLAB,Python,Scilab,Julia比較 その72【PID制御①】 数値計算
MATLAB,Python,Scilab,Julia比較 その72【PID制御①】

バックナンバーはこちら。
https://www.simulationroom999.com/blog/compare-matlabpythonscilabjulia-backnumber/

はじめに

前回まででは、DCモータ状態空間モデルの各種シミュレーションを実施。

DCモータ状態空間モデルはあくまでDCモータを模しているに過ぎない。
実際はこれに対して何かしらの制御をすることが普通である。
よって、PID制御を追加することを検討する。

登場人物

博識フクロウのフクさん

指差しフクロウ

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1

エンジニア歴8年の太郎くん

技術者太郎

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1

状態空間モデルを制御したい

太郎くん
太郎くん

ここまで状態空間モデルの使い方は雰囲気レベルで分かっては来たけど・・・。

フクさん
フクさん

何?

太郎くん
太郎くん

実際はこれに対して何かしらの制御をすると思うんだよね。
例えばPID制御とか。

フクさん
フクさん

そうだね。
じゃー、PID制御器を追加してみるか。

太郎くん
太郎くん

割と簡単に追加できちゃう感じ?

フクさん
フクさん

まぁ簡単かどうかの感じ方は人それぞれな気はするが・・・。

太郎くん
太郎くん

PID制御器もベクトル行列で一撃って感じにできるのかな?

フクさん
フクさん

うーん、何かしらやり方はあるのかもしれないが、
私の方では把握していないな。
よって、割とガチなPID制御器を追加する流れになると思う。

大まかな流れ

太郎くん
太郎くん

まぁこの際、ガチなPID制御器でもいいや。

太郎くん
太郎くん

どんな感じで追加していく感じになるの?

フクさん
フクさん

以下に流れだな。

  • 前回までの構成の確認
  • 今回の構成を確認
  • PID制御器の基本式の確認
  • PID制御器の基本式変形
  • PID制御器の離散化
  • 離散化PID制御器のブロック図
  • PID制御器を加味した構成図
  • 各種ツール、言語でシミュレーション
太郎くん
太郎くん

意外とやること多そうだな・・・。

フクさん
フクさん

一個一個は大した話では無いな。
まぁ「PID制御器の離散化」あたりが若干鬼門な気はするけど。

太郎くん
太郎くん

また、不穏なことを・・・。
恐らく数式まみれになりそうな予感・・・。

フクさん
フクさん

正解。

フクさん
フクさん

といっても微分解法はオイラー法にするつもりだから、
比較的簡単な離散化にはなるけどね。

太郎くん
太郎くん

(フクさんの「比較的簡単」は信用ならん・・・。)

まとめ

フクさん
フクさん

まとめだよ。

  • DCモータ状態空間モデルを制御すべくPID制御器を追加予定。
  • 上記に至るロードマップ提示。
  • 「PID制御器の離散化」がやや数式まみれになるためちょっと鬼門。
    • オイラー法による微分解法するだけなので比較的簡単にするつもり。

バックナンバーはこちら。

コメント

タイトルとURLをコピーしました