LoginSignup
2
2

More than 5 years have passed since last update.

Octaveで制御工学のための環境を作る

Posted at

この記事について

  • 制御工学の勉強にOctave使う必要が出てきたので環境構築方法を簡単にメモ.
  • 出力したインパルス応答の値がなんかおかしかったのでそれについてもメモ(未解決).

環境

今回は以下の環境に制御工学用の環境構築を行った.

  • Windows10 Bash on Ubuntu on Windows
  • Octave 3.8.1

手順

まず,controlパッケージの最新版 (2016.12.24時点では3.0.0) をwgetにより取得する.

$ wget https://downloads.sourceforge.net/octave/control-3.0.0.tar.gz

次に,Octaveを起動してcontrolをインストールする.Octaveはsudoで起動しないとパッケージインストール時にPermission Denied喰らうので注意.

$ sudo octave
octave> pkg install -global control-3.0.0.tar.gz

For information about changes from previous versions of the control package, run 'news control'.というメッセージが出てきたらインストール完了.
下記コマンドでパッケージを読み込むことができる.

octave> pkg load control

Octaveを起動するたびにパッケージの読み込みを行うのは面倒くさいので,ホームディレクトリに以下のような内容の.octavercファイルを作成しておくと便利.

.octaverc
pkg load control

テスト

以下のように定義した伝達関数$G(s)$のインパルス応答$g(t)$をプロットしてみる.

G(s) = \frac{1}{s^2 + 5s + 6}

Octaveのコードと出力結果は以下の通り.

octave> G = tf([1], [1, 5, 6])
octave> impulse(G)

impulse_test.png

解析解は $g(t) = e^{-2t} - e^{-3t}$ なんだけどグラフが微妙に違う…?

2
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2