XROTORがフリーソフトになってたのでUbuntu上で動かしてみた

XFOILの生みの親であるMark Drela教授のプロペラ設計のためのプログラムであるXROTORが今年になってライセンスがGNU GPLのフリーソフトになっていたので動かしてみた。

XROTORが先に開発されてしばらく商用シェアウェア、アカデミックはフリーのソフトとして存在していたが、そのあとモーター込みでの性能の計算プログラムとしてQPROPというソフトが作られてGPLで公開されていた。それに続く形でXROTORのGPLへのライセンス移行だった。

QPROPについては前の記事を参考にしてください。

XROTORでは飛行機のプロペラの設計と性能計算、風車の設計と性能計算が可能。

プロペラは修正されたLarrabee法という手法で設計される。

 

今あるのはソースコードだけなので自分でコンパイルして使っていく。

XFOILではソースコードからwindowsでの実行形式(.exe)が置かれるまで1年ぐらいかかったのでそれが待てる人は必要ないけど、すぐに使いたいって人への記事です。

具体的な使い方の記事とかはやる気次第で作るかも。

 

まず自分の環境。

メインはwindowsVISTA(笑)だけどコンパイルの簡単さとかを考えて仮想マシンのLinux上で動かそうとした。

OS:Ubuntu10.10(Oracle VM VirtualBOX上)

CPU:32ビット

Win機だが全く同じだったのでここを参考にubuntu導入

コンパイル(ビルド)するのにFortranのコンパイラなどが必要なので

  • gfortran
  • Intel Fortran Compiler(ifort)
  • Xlib.h

をインストール

※------追記------

ifortのインストールは必要ではありません。gfortranでもビルド(使えるようにする)は可能なのでインストールの簡単なgfortranをオススメします。下のifortのインストールの部分を省略して、途中でMakefileの中身をいじってやります。下に書いた赤文字追記の部分の変更をしてからmake ~~のコマンドに入ります。

※------追記終わり------

gfortranは端末上で

% sudo apt-get install gfortran

でインストール完了。

ifortはここを参考に。

ただし今のバージョンだと多少違って、インストール後に

% . /opt/intel/bin/ifortvars.sh -ia32

と打たないとコンパイルできなかった。ログアウトしてもifort使いたいならホームディレクトリの.profilのファイルの末尾に

. /opt/intel/bin/ifortvars.sh -ia32

を追加する

 

libPltのところでXlib.hがないとか言われたから、ここのように

% aptitude show xorg-dev

でインストールされてるか確認して

% sudo aptitude install xorg-dev

でパッケージのインストールをする

※------追記2011-12-12------

上記は下の方じゃないと動かないかも

% sudo apt-get install xorg-dev

※------追記終了------

以上のインストールが出来たら

ここを参考にコンパイルしていく。

これは非常に有用でありがたい記事でした。

同じことを書くようだけど少しだけ違うので改めて書くと、本家サイトからXrotor7.55.tar.tgzを落としてきて解凍する。

解凍は

% tar -xzvf Xrotor7.55.tar.tgz

などのようにする。解凍されたフォルダの./plotlibに移動して

% cp config.make.SP config.make
% make libPlt.a

これでlibPlt.aというファイルが出来る。その後./binに移って、

% make xrotor
% make jplot
% make jplote

としたらコンパイル通った。実は何度も試行錯誤してて、ここまでで半日以上かかったが、一度コンパイルしてエラーが出たら解凍されたファイルを削除し、解凍からやり直すことでエラー吐かないようになった。

 

※------追記------

初期設定だとifortというインテル製のFortranコンパイラを使う設定になっているが、ifortのインストールは少しめんどくさいのでgfortranというコンパイラを使うやり方。下記の変更をしてからmake ~~をするとエラーが出ないはず。

./plotlibにある「config.make」というファイルの16行目を

FC = ifort

を以下に変更

FC = gfortran

もう一点、./binにできている「Makefile」というフィイルの42行目(一行上に# Linux Inter ifort Fortranと書いてある行)を

FC = ifort

を以下に変更

FC = gfortran

※------追記終わり------

 

以上、ビルドが終わったら./binに新たにできるxrotor,jplot,jploteをパスの通ったところつまり、/usr/local/binなどにいれてやると

% xrotor

と打つことでどこでも起動できる。

Ubuntuでインストール直後だったので/usr/local/binにアクセスするために

%sudo passwd

でパスワード設定することによりアクセスできるようする必要もあった。

 

実はwinで動くexe形式のXROTORは持ってるから必要ないんだけど、勉強だと思って弄ってた。

XFOILがGPLで公開されてからのXFLR5みたいにXROTORもUIを改良したソフトを誰か作ってくれればなと妄想中。

 

※※※ 追記 ※※※

Ubuntuのバージョンに限定はあるけど、インストールが簡単になりました。この記事は古いのでこっちがオススメです。

http://d.hatena.ne.jp/ina111/20111221/1324439520

XFLR5のドキュメント日本語訳

前回の記事とpdfにそれなりの反響?を頂けた.公式に載せてもらったすぐ後に同じpdfファイルを中国語で翻訳する人が出てきたりした.良いソフトが世界に広まるのは胸が熱くなる.言語障壁のせいで日本だけが置いて行かれるのは我慢ならないとも思っている.

そんなこんなで,他のドキュメント2つも日本語訳してみた.

"Point is out of the flight envelope" というエラーが出るときの詳細説明と対策

http://dl.dropbox.com/u/3968380/ja_Point_Out_Of_Flight_Envelope.pdf

XFLR5の計算結果と実験値との比較

http://dl.dropbox.com/u/3968380/ja_Results_vs_prediction.pdf

今回も@dynamicsoarさんに校正して頂きました.ありがとうございます.

すぐ公式に載るはず.

日本語や中国語で翻訳する人が現れたのが影響してかver6.03からソフト翻訳の仕方が公開されるようになってた.なので,次のやるべき事はXFLR5のソフト自体の翻訳が第一だと思っている.

次にDLすると付いてくるGuideline.pdfの翻訳.

最近やっとマジメに学生業をやるようになったのと,ロケット作っている関係で暇も少なくなってきたので,協賛・同志の方がいればなぁと思ってます.とても一人でできる作業量ではないので.

読んだ本

関係ないけど,大学の図書館に「飛行機設計入門」という本を入れてもらって読んでみた.

昔は飛行機の本は重い本格派な本か全くの初心者向けの本しか無いと思っていたが,中間ぐらいのわかりやすい本があるなと思って読んだ

OpenRocket紹介

モデルロケットの設計をしようとするときに便利ソフトの紹介.

OpenRocket

オープンソースのモデルロケット設計支援ソフトOpenRocket

今まではRockSimSpaceCADが一般的だったが,

クレジットカードでしか買えないし,1ライセンスでそれなりのお金(60$~120$程度)がかかるなど一般に広まるとは到底思えないシロモノだった.

OpenRocketはGNU GPLライセンスのフリーソフト

Java仮想マシン上で動いているみたいでOSに寄らず起動させることができる.

他の有料ソフトでは中でどのような計算がされているかわからないのに対して,OpenRocketではドキュメントとして公開されている.

使い方はRockSimやSpaceCADとかなり似ている.

少し使ってみたところRockSimよりは機能が少ないがSpaceCADよりは便利な感じ.

SpaceCADとは永遠にさよなら出来そう.

OpenRocketで必要十分.

使い方

起動方法:.jarのファイルをダブルクリックするだけ!(JAVAのRumtimeがPCに入っていれば)

あとは英語を調べながらいじれば直感的に作れる!

プロジェクトの名前などを決めたら上のような画面になる.

sampleがあるので試しに表示させてみたところ.

フライトシミュレーションも充実している.

使うモーターもアメリカで市販されているものはほぼ全てデータがあるようだ.

推力データ

モデルロケットに使われるモーターのスラストカーブはここで見ることができる.全て英語だけど.OpenRocketでの推力データもここからのデータのようだ.

thrustcurve.org

推力データ以外にも解説など色々まとまっていてGood.

ドキュメント

このドキュメントがまとまっていてスゴイ.

OpenRocket自体が製作者の修士の研究であり,このドキュメントは修士論文からのもののようだ.

OpenRocket — Documentation

オープンソースソフトらしくロードマップが書いてあって,どのような機能が追加されるか検討されている.将来的にはRockSimを超えそうで目が離せない.

リンク

モデルロケットソフト

手作りロケット完全マニュアルアップデート

手作りロケット完全マニュアルという本で紹介されているソフトの著者自らのリンク集

リンク切れが多く,OpenRocketで多くのソフトは代用できる.

上のリンクにあるソフトのうち,以下のものはOpenRocketでは代用できないものだと思う.

固体ロケットモータ燃焼棒設計:Grain Design Program

抗力係数算定:AeroDRAG 4.5

スタイロや代替品のまとめ

スタイロフォームを買う用事があったので,性能がそんなに必要ないし,安い代替品がないかなと調べていた.

求めていたものはなかったが,調べたものをまとめてみた.

スタイロフォームなどの素材は一般名は「押出法ポリスチレンフォーム板(XPS)」という種類の素材であり,「発泡プラスチック保温材」の一種としてJISで規格としてまとめられている.

市場に出回ってる商品を作ってる会社は「ダウ化工」「JSP」「カネカ」の3社

同等品として出回っているがどこまで同じなのか不明.

JIS規格なので記述されている特性は同じだと思うが,以上,以下などで規定されているので製造会社によって異なるかも.

使った人に聞いてみると熱線で切断したときの毛羽立ち方やキレイに切れる感じが異なるということ.スタイロフォームが毛羽立ちにくいらしい.

値段は若干違う.

人力飛行機では多くがスタイロフォームIBを使っている気がする.

JIS規格でいうと1種b.

建築用断熱材として使われるときは断熱用フィルム(スキン)を貼っているものがあって種類が増える.

JIS規格

物性値 単位 1種a 1種b 2種a 2種b 3種a 3種b
密度 kg/m^3 20以上 20以上 25以上 25以上 25以上 25以上
圧縮強さ N/cm^2 10以上 16以上 10以上 18以上 10以上 20以上
曲げ強さ N/cm^2 17以上 20以上 20以上 20以上 20以上 25以上
熱伝導率 W/(m・K) 0.040以下 0.040以下 0.034以下 0.034以下 0.028以下 0.028以下
記号 - XPS-B-1a XPS-B-1b XPS-B-2a XPS-B-2b XPS-B-3a XPS-B-3b

吸水量 0.01以下

燃焼性 3秒以内に炎が消えて,燃焼しない

熱変形温度 80℃

製品名

ダウ化工は水色系,JSPは黄緑系,カネカは白色

ダウ化工 種類
スタイロフォームIB 1種b
スタイロフォームB2 2種b
スタイロエースII 3種b
スタイロフォームEX 3種b
スタイロフォームRB-GK-II 3種b
スタイロフォームEK-III 3種b
スタイロフォームAT 3種b
JSP 種類
ミラフォームM1F 1種b
ミラフォームMA 1種a
ミラフォームM2F 2種b
ミラフォームMKS 3種b
ミラフォームM2RS 3種b
カネカ 種類
カネライトフォームスーパーE-I 1種b
カネライトフォームスーパーE-II 2種b
カネライトフォームスーパーE-III 3種b
カネライトフォームスーパーE-BK 3種b

参考

押出発泡ポリスチレン工業会

物性値は上からの引用.詳しくは必ずここを参照.

ダウ化工スタイロフォーム物性表

JSP製品情報ミラフォーム

カネカ カネライトフォーム

QPROP(QMIL)の使い方

自分でプロペラ設計エクセルシート作ってみたのでデバックというか比較のためにXROTORなどをいじってた。

XROTORはMark Drela先生に連絡をすればアカデミックな利用の場合無料。ビジネスで使う場合は有償で使うことが出来る。

XROTORは中身が分からないし説明ドキュメントもないので詳細は不明だが、最適プロペラの設計と設計点以外での空力特性を計算してくれる。

XFOILと同様にCUIなソフト。昔のソフトなのでお世辞にも使いやすいとは言えない。

XFOILを作ったMark Drela先生とHarold Youngren先生が2007年からQPROPというプロペラ設計とモーターと合わせた性能計算ソフトをGPLライセンスで公開している。

QPROPとは

ここからダウンロードするとqprop.exeとqmil.exeがある。

QPROPはプロペラとDCモーターが合わさったものの性能計算ソフトウェア。

QMILは誘導損失最小(Minimum Induced Loss)のプロペラの設計ソフト。

QMILでは風車の設計に限ってはMILの他にTotal Power最大のものも設計できる。

QMILでは理論説明のpdfを見る限りLarrabeeの方法で設計されるように見える。(間違ってるかも)

なので人力飛行機あたりで十分使えるプロペラが設計できると思われる。

一方QPROPでは翼素理論と渦法を使って性能計算しているようだ。

ただ、設計点以外の動作点ではモーターと合わせた性能計算なのでちょっと扱いが面倒で使いにくい。

模型飛行機のプロペラを考える人は良いんだろうけど。

特徴として、翼型の風洞試験結果のテーブル(XFLR5などの結果でも十分使えるはず)が必要なく、揚力係数を迎角の1次関数C_L(\alpha)、抗力係数を揚力係数とレイノルズ数の2変数関数C_D(C_L,Re)として定義して計算させている。

 

以下、プロペラの設計にだけ興味があるのでQMILだけを取り上げる。

動かし方

.exeファイルをダブルクリックで起動しても一瞬黒い画面が立ち上がって消える。何度やっても同じ。

QMILを使うときはコマンドプロンプト上で動かす。

例えばCドライブ直下やC:\Users\ (ユーザ名)のフォルダにqmil.exeを入れておく

.exeファイルを置いた同じフォルダにインプットファイルを置く

インプットファイルはメモ帳などで作った.txtファイルで良い

コマンドプロンプト(cmd.exe)を開いたらqmil.exeがあるディレクトリ(フォルダ)まで移動して

>qmil (インプットファイル名) (アウトプットファイル名)

を入れる。間に半角スペースが必要。 続きを読む