[su_note note_color=”#fefeb6″]『計測自動制御学会「計測と制御」第62巻第09号 (2023)
特集:制御工学の発展・応用を支えるソフトウェア・ベンチマーク問題[/su_note]
やってみよう制御系設計:制御工学の教育研究に役立つ CAD ソフト南裕樹(大阪大学)
制御系設計で広く使われているソフトウェアはMATLABですが、そのライセンス費用は一部のユーザーにとっては高額であると感じられるかもしれません。そのため、MATLABの代替となるフリーまたはオープンソースの制御系CADソフトを探している方も多いでしょう。そのような方々のために、Scilab,GNU Octave,Python(Python-Control),Julia(JuliaControl)といったフリーまたはオープンソースの制御系CADソフトを紹介します。これらのソフトウェアは、基本的な制御系解析・設計を行うための専用コマンドが提供されており、MATLABと同様の機能を提供しています。しかし、「この中でどれを使うのがよいのか?」という質問に対しては、一概に答えることは難しいです。ユーザーのニーズや好みによって最適な選択は変わりますし、この問いに答えてしまうと、制御系CADをめぐる論争に発展する危険性があります。そこで、本解説では、制御系設計の例題を通して、それぞれのソフトウェアの使い方を少しだけ解説します。それぞれのソフトウェアの特性を理解し、自分に最適なソフトウェアを選ぶための参考にしていただければ幸いです。そして、この解説が、「無料ソフトで制御系設計をやってみよう!」という一歩を踏み出すきっかけになることを期待しています。
[su_custom_gallery source=”media: 3196,3197,3199″ limit=”22″ link=”image” target=”blank” width=”250″ height=”220″]
[su_box title=”リンク”]
- Scilab
- Octave
- Python-control
- JuliaControl(ControlSystems.jl)
- Google colab でのPython-control の利用方法はこちら
- Scilabがwindows11(UTF8)で起動しない場合の対応策はこちら
[/su_box]
[su_box title=”サンプルコード”]
- 例題1と例題2のコードリスト
- 制御系設計のサンプルコード(MATLAB, Python, Julia)
[/su_box]
[su_box title=”オンラインシミュレータ”]
例題2で対象とした制御対象は,台車型倒立振子です。設計したフィードバックゲインで倒立振子がどのように振る舞うかをシミュレータで確認することができます。また,QとRの値を変えると制御性能が変化しますので,そのことを確認されるのもよいと思いますし,また,極配置法でフィードバックゲインを設計してもよいでしょう。
ゲイン(k1,k2,k3,k4)を設定し,[rest]→[start]でシミュレーション開始です。キーボードのdボタンを押すと,外乱(指で突く)を与えることができます。初期値や外乱の値も変えることができます。また,[save]を押すと,シミュレーションのデータをcsv形式で保存することができます。
[/su_box]
[su_box title=”WolframAlphaの紹介”]
https://ja.wolframalpha.com
transfer function of 1/(s(s+1)) と入力すると,それに関する情報を一覧で表示してくれます。伝達関数の特徴をざっと把握するときに役立つでしょう。
[su_custom_gallery source=”media: 3182″ limit=”22″ link=”image” target=”blank” width=”250″ height=”220″]
[/su_box]
[su_box title=”MATLAB Mobileの紹介”]
[/su_box]
[su_box title=”参考資料”]
- 南,Pythonによる制御工学入門,オーム社(2019)
- 南,石川,制御系設計論,コロナ社(2021)
- みなみゆうきの制御塾(チャンネル登録よろしくお願いします)








[/su_box]
[su_note note_color=”#feb6c1″]公開するプログラムソースの利用,改変,再配布は自由に行っていただいて結構です. ただし, ここで公開した内容についての動作保証およびテクニカルサポート, 発生した損害の責任は一切行いませんので,ご了承下さい[/su_note]