大学でロケット作るサークルを主催してます。(突然ロケットには電子工作が必要になってきて、新入生に電子工作を教えたいなと思い、基本的なことを学べる用に教材的に基板を設計してみた。機能のわりに大きいのはハンダ付け初心者にハンダ付けさせるためです。大きな部品使うようにしてますし。基板は大学にある基板切削機という電子工作用のNCフライスで作った。相変わらず配線のセンスがなさすぎて悲しくなってくるが、反面教師的な部分も無いと教材っぽくないのでご愛嬌かなと。前に作ったのと同様にArduinoのDuemilanoveやUNOに使われているATmega328PというマイコンにArduinoのブートローダーを書きこんで、電源系、セラロック(背面に取り付けてあるので見えない)を付けた。あとはATmega328Pのピン通りに配線した。本物のArduinoとブレッドボードでプロトタイピングをしておいて、本番として自分で作った基板に載せられる。ハンダ付けも簡単で、そこそこのモノが出来て、なにより完成が早い。PC用ファンの回転数を表示するここにある7セグLEDライブラリを使って、温度センサはLM60を使って作った。LOW);にそれぞれ変更した。やってることは1.アノードコモンとカソードコモンで点灯時の電圧のHIGHとLOWが逆なので逆にした2.元のライブラリでは表示させるLEDの場所を指定していたのを、逆に消すLEDの場所を指定したというだけ。基板に取り付けたものと、ケーブルを伸ばした先の温度を測るためのもの。(写真は後者を取り付ける前)気温ですら1°Cぐらいの誤差があるけど、外付けの温度計も切り替えて測れるようにしたので、実用性はあるかなと思う。100円ショップで温度計が買えるこの時代に800円程度かけて温度計自作するのは悲しくなるけど、それ以上に工作が楽しくて、達成感と勉強できて良かった感は他の何にも変えられないものです。ワークショップ【追記】ワークショップ形式でサークルで新入生に作ってもらった。基本的なことを教えながら作ってもらった。同じ基板で同じセンサ・プログラムでも表示される温度が変わってくることなんて、本を読んで勉強してるだけでは理解できないことなので良い教材になったかなと思った。簡単なハンダ付け練習とLEDチカチカさせて、LCDにHelloWorld表示させた後にこのレベルだとプログミング辺りに少しレベルの乖離があったみたいだけど一日でかなりの達成感を感じてもらえてモチベーション上げてもらえたので良かったかなと。電子工作は修行のような忍耐強さが必要なので、マイコンいじるのが好きになってもらえるのが何よりだった。ina1115前にXFLR5のドキュメントを日本語化してた記事からの続き。※<<2011-11-08追記>>翻訳作業の訳語検討や統一のためのページ作りました。http://www52.atwiki.jp/xflr5japanese/<<追記終わり>>vbkさんがXFLR5を日本語化しようとプロジェクトを立ち上げてくれました。https://launchpad.net/xflr5複数人が翻訳作業に参加すれば、誤訳も少なくなるし自分が飽きたから翻訳終了とならずに続くと思います。translateからwebブラウザ上で翻訳作業ができる。翻訳したデータはhttp://bazaar.launchpad.net/~vbkaisetsu/xflr5/trunk/filesにpo形式で出力されるので、po2tsというソフトウェアを用いてXFLR5で使われているts形式に変換できるらしい。http://translate.sourceforge.net/wiki/toolkit/ts2po訳に自信がなくてもみんなで確認しながら翻訳できるので、是非参加してください。自分も空いてる時間にポチポチとやっていきます。暫定ファイルこれとは別にqtlinguitというソフトを使って自分で翻訳ファイル作ったのですが、メインフレーム以外の翻訳が反映されないようなので困っていました。自分の環境だけなのかわからないので教えてください。暫定的なファイルですけど置いておいきます。このqmファイルをXLFR5のtranslationsフォルダの中に入れてOption→languageで変更できます。ina1114作ってみたったら作ってみた。2011年6月4日に自分たちで作ったロケットを伊豆大島で打ち上げてきた。詳しいことは別のページに書くことにして、久々に面白い(exciting)作業ができたのでブログにしてみる自分たちが作ったロケットがどのように飛行したのか、どこまで飛んだのか、機体にどのような変化があったか、これらがわかるとただ単に打ち上げて楽しかっただけではなく工学的な面白さが出てくる。いうことで慣性計測ユニットを作ってみた。諸々の都合があって、開発にかけられる時間は非常に限られていた。今回書く慣性計測ユニットだけではなくパラシュート分離機構用のタイマー作りや普段の研究室生活、ロケット打ち上げまでの事務一般、ロケット本体の仕上げなどの作業をしながら2週間弱しか開発期間がなかった。無給のブラック企業を素でいくぐらいの忙しさだった。このため、開発の工数を少なくして、新しく勉強することを最小限にしながら自分が満足できるクオリティのものを作ることをコンセプトにした。マイコンAVRのATMEGA328PにArduinoのブートローダを書きこんでDIPのマイコン単体でArduinoとして動かした。28ピンのAVRのICに3端子レギュレータから5VのVccとGNDと16MHzのセラロック(発振子)だけを付けてやればArduinoとして動く。ピンの役割などはATMEGAのデータシートを見ながら動かした。3.3Vの電源が取れないだけでそれ以外はArduinoとして動くのでロケットに積むために小型化したい要求と開発が早くて簡単だという要求を満たしていた。ブートローダの書き込みはここを参考にして、書いてあるとおり行った。搭載センサセンサによっては3.3V駆動だったり入出力がRS232Cレベル(3.3V)だったりするのでセンサへの入力になる部分は分圧抵抗を入れて5V→3.3Vにした。気圧センサSCP1000秋月で買える気圧センサで測定範囲300hPa~1200hPaで2Hz程度で出力が取れるので高度計として使用した。大気圧1013hPaとしてざっくりと10mで1hPaの変化があるのに分解能が1.5Paあるということで理論的には分解能15cmぐらいがわかるはずと思って採用した。実際はノイズがあったり、風が当たると動圧で気圧が変化するなどがあり、建物1階の高さの判別ができる程度だった。3mの違いはセンサから読み取れる。SPI通信で値が出てきてくれるのも使いやすかった。3軸加速度+3軸ジャイロセンサSparkfunのIMUフュージョンボードを使用した。IMU3000(3軸ジャイロセンサ)とADXL345(3軸加速度センサ)を合わせたもので、両方の値がI2Cで取得できる。レジスタを最初にいじれば最大加速度などを変えられる。値段が少し高いが5G以上の加速度を取得したく、勉強する時間がない、実装をいかに早くできるかが勝負という今回の目的に非常によく合っていた。最初はわけわからなかったが、データシートをしっかり読みこんだら使えた。GPSモジュール秋月のGPSモジュールGT-723Fを買ってたが、逆起電圧をかけてしまったのか、何時まで経っても衛星を補足してくれないただの金属片になってしまったので泣く泣くその場にあったGT-720Fを使用した。RS232Cレベルの出力だったがArduinoのピンにそのまま接続して大丈夫だった。入力部分は分圧抵抗で3.3V近くまで落としている。ArduinoにTinyGPSというライブラリがあったので複雑になりがちなGPSの出力を比較的簡単に扱えた。温度計LM35ロケットエンジンの酸化剤周りは充填中と点火後にそれなりの温度変化があるのでどの程度なのかがわかると酸化剤の蒸気圧から燃焼圧だったりがわかる。その目的のために秋月で買えるLM35をAnalogINのピンに繋げて使った。これはA/D変換するだけで温度がわかるので一番簡単だった。キャリブレーションはするヒマが無かったが見た感じは何もしなくてもそこそこの精度の値は出てる気がした。SDカードデータを保存したかったのでSDカードを付けた。SPI通信の口が1つしか無かったのでデータロガー用の2つ目のATMEGA328Pを用意し、一つ目とシリアル通信しながら貯めたデータをマイクロSDカードに保存するようにしたかった。SDカードになんでもないデータを書きこむことは出来たが、最後までデバッグが間に合わなくて目的は達成できなかった。根本的に勉強不足すぎてよくわからないままだった。結局AVRの内部のEEPROMに打ち上げから2分のデータを保存するようにして対処した。デバッグ用のLCD1つ目のセンサの読み取り用のマイコンにはセンサの値がすぐわかるように16×2のLCDキャラクタディスプレイを外付けで取り付けられるようにした。プログラムプログラムはArduinoのサンプルスケッチやセンサの型番でググって出てくるサンプルコードをほとんどそのまま組み合わせる形で書いた。いうことができるのがArduinoのいいところ。値段6軸の加速度・ジャイロセンサとGPSモジュールが高かったがそれ以外は秋月・千石で買えば安く作れた。1.5万円ぐらいで全部作れた計算になる。実際は余分な部品を買ったりで3万円ぐらい使って開発したので金欠な自分にはキツい出費だった。学校にあった基板切削機という機械で基板を作った。上手とはいえない設計になったが非常に楽しく基板を作れた。精度とか校正とか試験とかこれがすごく重要なのだが開発の期間が短すぎて手がつかなかった。完成したところ今までLEDチカチカさせて喜んだり、小物を作って満足したりしてたぐらいの電子工作経験だった。その段階から一気に本格的に趣味としての電子工作が出来たので心底満足した。これでもまだプロトタイプみたいな完成度なのであんまり外に出せるようなものではない。打ち上げ後回収を失敗し、機体が大破してしまったので夏の終わりまでに作り直してver.2の進化したものを作りたいと思った。尊敬するfenrirさんが作っているような慣性航法装置が理解できるようになるまでは続けたいところです。ina1112更新日の今日が人力飛行機Daedalusが飛行距離世界記録を記録した記念日だったのでページ作ってみる。Daedalusプロジェクト概要MITの航空宇宙工学部によって進められたプロジェクト。世界記録を作ったのは1988年4月23日。飛行距離:115.11km滞空時間:3時間54分の記録でギリシャ領クレタ島のイラクリオンを出発してサントリニ島に到達して終了した。20年経つ現在でもFAIに人力飛行機の飛行距離及び滞空時間の世界記録として記録されている。ダイダロスというのはギリシャ神話でロウの翼で太陽を目指して飛んでいったイカロスの父である大工で発明家のダイダロス(巧みな工人の意)からきている。人を飛ばすための技術を冠した名前としてはこれ以上ない立派なものだと思う。Daedalusプロジェクトでは3機の人力飛行機が作られた。87:1988年2月17日にカルフォルニアにあるNASAドライデン飛行研究センターがあるロジャース乾燥湖で試験飛行中にクラッシュした。88:世界記録を作った機体すべての機体はマサチューセッツ州のボストン郊外にあるハンスコムフィールドにあるMITのリンカーン研究所で作られた。チーム構成は学部生と大学院生、教授陣である。87はワシントン・ダレス国際空港で展示されている。88はスミソニアン博物館に保管されている。して使われている(使われていた?)。写真を見る限りランディングワイヤーが新たに取り付けられているようだ。その他無人機にするために構造は変えずに他の部分で大きく改造されているようだ。59.9km、2時間13分。飛行距離15.44km、滞空時間37分38秒。これらの記録はNASAのドライデン飛行研究センターでもエドワーズ空軍基地で達成された。EagleのためにNASA、MIT、ユナイテッドテクノロジー社などから68.5万ドルの提供を受けた。872機作られたダイダロスの1機目。前述のドライデン飛行研究センターで試験飛行中の右旋回するときにスパイラルダイバージェンスしてしまいクラッシュした。88のバックアップ機として修復された。Kanellopoulosだった。世界記録の出発点はギリシャ領クレタ島のイラクリオン飛行場。FAIの規定に則って自力水平発進した。飛んでいる間は基本的に高度5mから10m。複数の船にエスコートされるように飛行した。ゴールのビーチまで順調に航行した。ゴール直前になって陸近くになって風向きが変わり背風になった。背風のために飛行速度はでたが、コントロールが難しく観客がたくさんいる狭いビーチに正面から突っ込む危険性があった。そのためビーチに沿うような向きに尾翼を切ったが砂地の温度が高いために局所的なサーマルを受けて片翼に揚力が出てしまい海側に流されてしまった。風によってテールブームが捻れたときにコントロールを失った。結果、フライトは公式記録ではサントリニ島のペリッサビーチから7mの海で終わった。完成までPhase1-1985年4月~86年4月-実現可能性の検討Daedalusプロジェクトは1985年4月から86年4月まで実現の可能性の検討を行っていた。このころのデザインはフェアリングの後ろにプロペラがあるものであった。鳥人間の人たちは中ペラと呼ぶ形態。Drela先生はパイロットの体重の半分程度の重量の機体であれば大まかな近似において必要とする出力はパイロットの重量に比例することを示した。体重が450g増えると1.5W増えるという概算であった。このことを知らずに昔自分で計算したことあったけど1kg増えると3W増えると出してたから細かい値は別にして長距離狙う人力飛行機ならこのぐらいの出力重量比になることがわかる。ミケロブ(Michelob)は同社のブランド商品のひとつ。Eagleは同社のシンボルマーク。英語圏の人がみたらビールっぽい名前に感じるのだろうか(笑)この時期にDrela先生はXFOILを完成させて新しい翼型の検討をしていた。XFOILは必要なレイノルズ領域では風洞試験より精度が良かった。風洞では周りの壁や模型支持棒などの影響をうけるからだ。この時期に翼の2次構造をつくるためのCNCのフォームカッター(熱線と土台をコンピュータ制御で動かしてスタイロを切る機械)が製作された。リブを切るだけではなく大きなブロックから前縁材を切り出すのにも使われた。この機械があるためにDaedalusプロジェクトには翼を担当するsectionが無かった。CNCのフォームカッターを自作しているひとのリンクを貼りつけておくhttp://rockhill-555.world.coocan.jp/bbs/joy-b/hobby-cnc.cgi?page:35=vhttp://homepage2.nifty.com/modelicengine/h9100401.htmhttp://nonnno.hobby-web.net/http://www.teaser.fr/~abrea/cncnet/table/tables.phtmlhttp://www.hobbycnc.com/同時にパイロットも決定された。5人のオリンピック出場級の人を集めて、訓練させた。危険が伴うので人集めには苦労したようだ。体力的には十分だったので体力作りとともにこのために作られたフライトシミュレータなどで飛行機操縦の経験を積ませることを重視した。機体に何も積まないと水分や糖分、塩分がなくなって体力が切れてしまうので特別なドリンクが開発された。生理学的問題と解決』を参照。Eagleは18人でのべ15000時間で作られた。これは18人が1日8時間フルタイムを100日ちょっとかかるぐらいの作業量。Eagleが完成してから翼表面が層流であるかどうかの確認の実験が行われた。翼表面に粉末と液体の混合物を塗布して液体が乾くときに流脈線が視えることによって流れの遷移が確認できる。結果はXFOILで解析した通りの範囲で層流であることがわかった。翼端はエルロンがあったりと複雑な構造をしていたために前縁材部分で乱流に遷移していた。Daedalusでは密度の高いフォーム材が使われるようになった。必要パワーの測定が行われた。滑空角を使って必要パワーを計算することはわずかな上昇気流によって影響を受けるために難しい。したがってプロペラシャフトにひずみゲージを貼りつけることによって必要パワーを測定した。驚くべきことに高度3mから7.6mに変わっても地面効果の影響はなく、必要パワーは一定だった。いい必要パワーの計測方法はパイロットの主観的な推定だが。高度が一定になるようなオートパイロットも検討されていたが、高度計が信頼に値するものでなかったからつくられなかった。Eagleに比べて大幅に軽量化されえている。荷重係数が3Gから1.75Gに変わったからだ。それにグレードの高いカーボン糸を使っている。Eagleの翼端3.7mに付いていたエルロンもDaedalusにはついていない。aircraft(ダイダロス人力飛行機の重量解析)↑がDeadalusの各部品の重量についてすばらしくまとまっているエントリーです。片持ちの主桁の重量については元居たサークルで実績的に、もっと軽くできると反論できるが、それ以外は各部品が如何に極限まで軽量化されているかがよくわかる。操舵フェアリングフェアリングの白く見える部分はケブラー繊維の複合材料(AFRP)で作られている。長距離を狙う人力飛行機のフェアリング(パイロットを覆っている部分)は以下を意識して設計製作されていると思う。最近の鳥人間コンテストに出る機体の多くがフェアリングノーズ部分に穴を開けてインテイク(空気を取り入れる部分)にしている。アウトレット(空気が出ていく部分)は翼型の再現と後縁の流れの剥離を嫌ってフェアリングの70%から90%の部分につけている。ダイダロスは主翼の下、パイロットの頭の真上にインテイクが付いている。ここに取り付けることで翼型によって加速されていない空気が入り、後縁に隙間を開けたアウトレットによって空気を出している。加速された流れを入れて減速した流れを出すとその運動量分が抗力になる。Daedalusは空気の入出流によって速度が変わらないように上手く設計されている。パイロットの発熱量と酸素必要量を計算して必要なだけの空気流入させている。入った空気は曲がり管を通してパイロットに直接フレッシュエアーが当たるようにしている。パイロットの快適性を求めると際限がないので必要なものを必要なだけ供給するように合理的に設計されている。プロペラ–Daedalus88プロペラ半径[m]1.7ブレード数[-]2定常速度[m/s]6.7回転数[rpm]110巡航時入力パワー[W]200Cl[-]0.7Cd[-]0.015Cl0[0]-4.0翼型DAE51プロペラの設計にはXROTORというソフトを使用している。XROTORは最近GPLのフリーソフトになったので自分でコンパイルすれば使える。参考:XROTORがフリーソフトになってたのでUbuntu上で動かしてみたxrotorのコンパイルについて修正されたLarrabeeの手法では最適プロペラが根元の細くなったプロペラになるが、プロペラのスパーが入るように根元が太く調整されている。太くすることで根元のレイノルズ数が上がり、全体の効率は上がっているはずである。これは渦法での設計によってわかる。計器まだまだ更新予定。GPLのフリーソフトになっていたので動かしてみた。XROTORが先に開発されてしばらく商用シェアウェア、アカデミックはフリーのソフトとして存在していたが、そのあとモーター込みでの性能の計算プログラムとしてQPROPというソフトが作られてGPLで公開されていた。それに続く形でXROTORのGPLへのライセンス移行だった。QPROPについては前の記事を参考にしてください。XROTORでは飛行機のプロペラの設計と性能計算、風車の設計と性能計算が可能。プロペラは修正されたLarrabee法という手法で設計される。今あるのはソースコードだけなので自分でコンパイルして使っていく。XFOILではソースコードからwindowsでの実行形式(.exe)が置かれるまで1年ぐらいかかったのでそれが待てる人は必要ないけど、すぐに使いたいって人への記事です。具体的な使い方の記事とかはやる気次第で作るかも。メインはwindowsVISTA(笑)だけどコンパイルの簡単さとかを考えて仮想マシンのLinux上で動かそうとした。Compiler(ifort)Xlib.hをインストール※——追記——ifortのインストールは必要ではありません。gfortranでもビルド(使えるようにする)は可能なのでインストールの簡単なgfortranをオススメします。下のifortのインストールの部分を省略して、途中でMakefileの中身をいじってやります。~~のコマンドに入ります。gfortranでインストール完了。ifortはここを参考に。-ia32と打たないとコンパイルできなかった。インストールが出来たらここを参考にコンパイルしていく。これは非常に有用でありがたい記事でした。同じことを書くようだけど少しだけ違うので改めて書くと、本家サイトからXrotor7.55.tar.tgzを落としてきて解凍する。Xrotor7.55.tar.tgzなどのようにする。libPlt.aこれでlibPlt.aというファイルが出来る。jploteとしたらコンパイル通った。ifortというインテル製のFortranコンパイラを使う設定になっているが、ifortのインストールは少しめんどくさいのでgfortranというコンパイラを使うやり方。~~をするとエラーが出ないはず。xrotorと打つことでどこでも起動できる。passwdでパスワード設定することによりアクセスできるようする必要もあった。実はwinで動くexe形式のXROTORは持ってるから必要ないんだけど、勉強だと思って弄ってた。XFOILがGPLで公開されてからのXFLR5みたいにXROTORもUIを改良したソフトを誰か作ってくれればなと妄想中。※※※Ubuntuのバージョンに限定はあるけど、インストールが簡単になりました。この記事は古いのでこっちがオススメです。»プロフィール趣味が高じて空飛ぶモノの開発する仕事はじめました。