MATLAB,Python,Scilab,Julia比較 その73【PID制御②】

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

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

はじめに

前回、DCモータ状態空間モデルをPID制御するよう検討。
恐らくできるが、PID制御器を作成する必要がある。
この流れでやって行く予定。

  • 前回までの構成の確認
  • 今回の構成を確認
  • PID制御器の基本式の確認
  • PID制御器の基本式変形
  • PID制御器の離散化
  • 離散化PID制御器のブロック図
  • 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

いままでの状態空間モデルの制御を構成図として書くと。

太郎くん
太郎くん

まずやることは、「前回までの構成の確認」?

太郎くん
太郎くん

構成と言っても、状態空間モデルがあるだけだよね?

フクさん
フクさん

いんや、厳密には状態空間モデルの入力があるな。

太郎くん
太郎くん

あ、ステップ入力してたアレか。

フクさん
フクさん

図で書くとこんな感じだな。

前回までの状態空間モデルの構成

前回までの状態空間モデルの構成、指令器、DCモータ、状態空間モデル、E(t)、θ、ω、I、K、R、L
太郎くん
太郎くん

制御をしていると言えばしてるけど、
いわゆるオープンループってやつだね。

開ループ制御(かいループせいぎょ)またはオープンループ制御(英: Open-loop control)は、制御理論において、現在の状態と制御システムのモデルのみを使って入力に対して計算を行う制御を指す。フィードバックを使わずに、入力が所定の目標値に達したかを判断することを特徴とする。つまり、開ループ制御システムは制御しているプロセスの出力を観測しない。したがって、真の開ループシステムは機械学習には採用されず、発生させた誤りを訂正することもできない。また、システムにおける外乱を補償することもできない。

Wikipediaより(https://ja.wikipedia.org/wiki/%E9%96%8B%E3%83%AB%E3%83%BC%E3%83%97%E5%88%B6%E5%BE%A1)

今回の構成を確認

フクさん
フクさん

対して、今回の構成はこれになる。

今回の状態空間モデルを制御する構成

今回の状態空間モデルを制御する構成、指令器、制御器、DCモータ、状態空間モデル、E(t)、θ、ω、I、K、R、L
太郎くん
太郎くん

こっちはちゃんとクローズループになってるね。

閉ループ制御(へいループせいぎょ)またはクローズループ制御(英: Close-loop control)は位置決め制御方式の一種。制御装置からの出力信号によって制御された機械やモーターの移動量のデータを制御装置にフィードバックし、入力値と出力値を常に比較して両者を一致させるように全体の操作量を調整する制御。指令だけをしてフィードバックを取らないオープンループ制御に対して、クローズループ制御は指令からフィードバックを取り補正を加える。

Wikipediaより(https://ja.wikipedia.org/wiki/%E9%96%89%E3%83%AB%E3%83%BC%E3%83%97%E5%88%B6%E5%BE%A1)
太郎くん
太郎くん

あと、角速度\(\omega(t)\)をフィードバックしているということは角速度制御をするってことか。

フクさん
フクさん

そうだね。
まぁここは角度\(\theta(t)\)でも良いけど、今回は角速度\(\omega(t)\)にしておこう。

フクさん
フクさん

構成が確認できたところで、次回はPID制御器の数式についてだ。

太郎くん
太郎くん

(うーん、嫌な予感しかしない・・・。)

まとめ

フクさん
フクさん

まとめだよ。

  • これまでの状態空間モデルの構成を確認。
    • オープンループ制御になっている。
  • 今回の構成を確認。
    • PID制御でクローズループにする。
    • 角速度ωをフィードバックすることで角速度制御をすることが分かる。

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

コメント

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