バックナンバーはこちら。
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制御器の離散化」がやや数式まみれになるためちょっと鬼門。
- オイラー法による微分解法するだけなので比較的簡単にするつもり。
バックナンバーはこちら。
コメント