飛行ロボット自動操縦・全翼機入門機の図面・プログラム公開

今年も飛行ロボコンの季節がやってきた。
私はこの大会にB1からB3まで参戦し、1年ブランクを置いて、その後はずっと運営に関わってきた。

途中ルールの大幅な改定があったり、スポンサーも増えて大会も大規模化するなど、飛行ロボコンを取り巻く環境は大きく変化した。

変わるルールに合わせて、参加者も変わっていかなければならない。
とにもかくにも、大会、すなわちクライアントが何を求めていて、何をすれば良いのか、考え続けることが大事だ。


さて、(順調にいけば)今年は私も学生生活最後の年だ。
最近は作るものも本格化してきて、飛行ロボコンサイズよりも大きな無人機を作ることの方が多くなった。
そんな背景もあって、運営と研究の傍ら、久しぶりに飛行ロボコンサイズの機体を作ってみたくなった。
やっぱり普通の機体を作るのは面白くないので、最近自分の中で流行している無尾翼機、ついでにプロペラの後流を翼上面に通して揚力を稼ぐチャネル翼を採用してみた。
さらにそれを半自動操縦によってより安定化するといったコンセプトだ。
エレボンを用いたねじり下げや、ボックスを軸としたバルサ構造など、持っている技術で使えるものはこれに含めた。



f:id:yuukivel:20190912174818j:plain

機体名は「Fantôme」フランス語で「亡霊」という意味だ。

f:id:yuukivel:20190926213827p:plainf:id:yuukivel:20190926213912p:plain


youtu.be


(本当の元ネタはPS2初期の名作「SKYGUNNER」なんだけれども知っている人は少ないか,,,)


飛行ロボコンの出場機体を見ていると、いくつか気づくことがある。
無尾翼機が少ない。必須というわけではないけれども、ねじり下げを作るのが難しいのかなと感じた。
・自動操縦機でStability Assistをやっている機体が少ない。せっかく自動操縦をしているのにSASを入れないのはもったいない。

加えて、学生の様子を見ていると自動操縦をやるうえで結構参入障壁が大きいことがわかる。
・まずプロポの信号を読み出すところで苦労する。これはarduinoのpulsein関数が悪いところが大きいけれども。
・次に姿勢推定で躓く。場合によってはオイラー角を知らず、角速度そのまま積分すればいいんでしょ的なノリで来ることもある。
・Filterの存在を知らない場合がある。補正をしてあげないと3分も持たない。
・授業では習ったけれども、PIDの実装ができない場合がある。これも軽く手ほどきすれば理解してくれるのだけれど、座学だけだと「どの部分をプログラムに書けばよいのか」がシステムダイナミクスの部分とごっちゃになってわかりにくいようだ。
・制御に気が回るばかりに機体が疎かになる。しっかりと剛性のある機体を作らなければ飛行実験の再現性がとれないが、なぜか自動操縦をやり始めたとたんにヨワヨワ機体になってしまうことある(二敗)


これらの問題をうまく解決して次につなげていってもらうために、この機体の「XFLR5空力解析ファイル」「製作用ジグシート・カット部材図面」「自動制御Arduino sketch」を公開する。

github.com


製作法や基板など詳しい説明はしないが、画像やsketchの中身を見てもらえればきっと理解できるだろう。(理解できるくらいには勉強してほしい)
基本的に3mm厚バルサと1mm厚バルサだけで作れるようになっている。


ただしちょっと癖のある機体なので、調整は大変かもしれない。サイドスラスト角の調整がうまくいけば、びっくりするほどよく飛ぶ。
構造も、飛行ロボコンに直接出すにはちょっと重く、実験機としてガシガシ使うにはちょっと弱いので、本格的に運用するなら多少工夫をした方が良いかもしれない。
加えてチャネル翼で推力を揚力に変換する(語弊はある)機体なので、滑空比は良くない。
しかしながら、爆音を携えながら低速で威圧的に飛ぶ様は、往年の名機MayFlyを彷彿とさせる気もしなくもない。

もし作った!という人がいれば教えてください。泣いて喜びます。