2012年10月25日木曜日

MultiWii テレメトリ

2mスパンのグライダーだと私の視力では空気の澄んだ日でもせいぜい高度600m位までが姿勢を確認して飛ばせる限界です。よそ見して見失い落とした機体も複数。テレメトリで計器飛行できないか妄想していました。ジャイロ・加速度センサーで姿勢を表示し、できればGPSでどこにいるか方角と距離がわかるとうれしい。センサーもMultiWii制御基板が安くなったので、FrSkyのテレメトリで送って地上側で何か表示器を作ればよいかなと夢想していました。

ちょうどMultiWiiフォーラムでFrSkyテレメトリでデータを送る話題のスレッドが始まっています。
Direct Frsky telemtry data from MW FC
MultiWii制御基板からのデータをFrSkyのテレメトリデータにあわせて送り、FrSkyテレメトリディスプレイ(あるいはそれを組み込んだTurnigy 9Xファームウェア)で表示させようというものです。
そのうちに新顔のAndroid用GUIプログラムであるEZ GUIの作者がこのFrSkyテレメトリにも対応させました。



このEZ GUI、とても機能が豊富で、単なるBluetooth経由のデータ表示だけではなく、完全にMultiWii 2.1に対応した設定機能を持っています。GUIとしてのデータの表示もヘッドアップディスプレイ風のものまで提供されます。
デバッグ用の生データ表示、GPSデータ表示、Googleマップ上での表示までと至れり尽くせりになってきています。そしてなんとオープンソース!Android携帯の特長を生かしてGPSでは機体だけではなく、携帯側のGPSから操縦者の位置も合わせて表示してくれます。


これがFrSkyテレメトリ経由のデータにも対応したのでやりたいことが作る前にできてしまいました。
Aitendoの350円 RS232C-TTL変換基板でMultiWii シリアルからFrSky受信機に接続。プロポ側は同じ基板でBluetoothアダプタをFrSky送信モジュールに接続しています。EZ GUIの最新版をダウンロードしてFrSky接続としてそのBluetoothアダプタを選べばあっけなく繋がりました。

MultiWiiは2.1に上記スレッドでSebbi氏が9/22にポストした変更を追加。ATmega 328なのでシリアルがひとつしかないのでIceWind氏のアイデアのアームしたときだけFrSkyデータを送る変更も入れています。

EZ GUI自体は多機能な割りに軽く、Huaweiのメモリが256MしかないイーモバイルS41HWでも十分動きます。画面が小さくHUDのレイアウトが厳しい。小さいフォントを設定してコンパイルすればよいのですがAndroidの開発環境が不勉強。これを機会に画面が大きい機種を入手しました。

Android 4の問題なのか、一度切断するとBluetoothの再接続が不安定なのが残念。表示自体は更新が遅いながらちゃんと動いています。週末にグライダーに積んで飛ばしてみるつもりです。MultiWii基板は特に飛行機モードなど使わず単なるセンサーとして載せるだけです。

MultiWii飽きる暇なし。


0 件のコメント: