【制御系設計ツール】GNU Octave(オクターブ)

ここでは、GNU Octave(オクターブ)について紹介します。

はかせ
はかせ

同じオープンソースScilab(サイラボ)よりもMATLABとの互換性があるようなので、コツコツと使ってみようと思います。

スポンサーリンク

制御系設計ツールと言えばMATLAB

MATLAB(私はマットラボと呼んでいますが、マトラボが正しいようです)について紹介します。

MATLABは、制御系設計ツールのデファクト・スタンダードと言ってよい、MathWorks社(The MathWorks, Inc.)のソフトウェア(技術計算言語、プログラミング環境)です。

このブログで紹介しているLQ制御は、MATLABのControl System Toolboxを使いシミュレーションできます。

私のMATLABとの出会いは、研究室のMacintosh(マッキントッシュ、略してマック)でした。行列計算が簡単にしかも高速に処理されるので、現代制御理論を使った制御系設計やシミュレーションにはもちろんのこと、論文作成にも活躍してくれました。

スポンサーリンク

オープンソースの制御系設計ツールGNU Octave

オープンソースでもMATLABと同じようなことのできるソフトウェアがあります。GNU Octaveはその1つです。

2020年5月にGNU Octaveを触り始めたばかりですが、Scilabよりも使いやすい、違和感がないような感じがしています。

これから基本的な操作やプログラミングをして、このブログで紹介している振動制御などに使えないか試してみようと考えています。

下図は、メッシュプロットの表示例です。

図1 GNU Octaveの画面例

GNU OctaveのWebサイトです。

GNU Octave
GNU Octave is a programming language for scientific computing.
スポンサーリンク

GNU Octaveを使ってみようと思った理由

そろそろpythonでMATLABをやってみようかと調べていたところ、

  • 線形代数や行列ならOctave、それ以外ならpython

を勧める情報が多く、GNU Octaveについて調べ始めました。

早速、GNU Octaveサイトにアクセスしたところ、GNU Octaveの以下の説明が目に留まりました。

GNU Octave

Scientific Programming Language

  • Powerful mathematics-oriented syntax with built-in plotting and visualization tools
  • Free software, runs on GNU/Linux, macOS, BSD, and Windows
  • Drop-in compatible with many Matlab scripts

GNU Octaveのサイトから引用

最後の「Drop-in compatible with many Matlab scripts」を見て、Mファイルがそのまま使えるのなら試してみよう決心しました。

スポンサーリンク

GNU Octaveを早速インストール

GNU Octaveのサイトから以下のWindows版をダウンロードしました。

  • Windows-64 (recommended)
    • GNU Octave 5.2.0 Released
    • Jan 31, 2020

早速インストール。JavaのJREが必要なようですが、後からでもよいようなので、基本的にデフォルトでインストールしました。

CUI版とGUI版がありますが、私はGUI版を使っています。

GNU Octaveインストーラーの起動画面

GNU Octaveインストーラーの起動画面

図2 GNU Octaveインストーラーの起動画面

下図がGNU OctaveのCLI画面です。

  • GUIは、WindowsやMacの様にマウスを利用したインターフェースのこと
  • CUIとCLIは同じ意味と思っていますが、Windowsのコマンド・プロンプト画面の様なキーボード入力を前提としたインターフェースのことです。

GUI:Graphical User Interface(グラフィカル・ユーザー・インターフェース)

CUI:Character User Interface(キャラクタ・ユーザー・インターフェース)

CLI:Command Line Interface(コマンド・ライン・インターフェース)

図3 GNU OctaveのCLI画面

スポンサーリンク

GNU Octave 6.1.0 Released(2020.11.26)

GNU Octaveの新バージョンがリリースされています。

安定性の向上や機能アップ、MATLAB R2019bとの互換性向上などのようです。着実にバージョンアップが進んでいるようで好印象です。

バージョンアップ内容については、英文ですが以下のページをご覧ください。

GNU Octave Version 6
GNU Octave is a programming language for scientific computing.

まとめ

制御系設計ツールのデファクト・スタンダードは、MATLAB/SIMULINKです。ここでは、MATLABのMファイルが使えるGNU Octave(オクターブ)について、以下の項目で説明しました。

  • 制御系設計ツールと言えばMATLAB
  • オープンソースの制御系設計ツールGNU Octave
  • GNU Octaveを使ってみようと思った理由
  • GNU Octaveを早速インストール
はかせ

振動制御を学んだおかげで、モデリングと制御系設計、実験・計測、CAEと幅広く学び、出会いとチャンスにも恵まれ工学博士になりました。
CAEが珍しくない今だからこそ、実験やリアルなモノづくりの体験がより重要になっていると考えています。

はかせをフォローする
制御とモデリング
スポンサーリンク
スポンサーリンク
はかせをフォローする
実験とシミュレーションとはかせ工房
タイトルとURLをコピーしました