Dropbox

小型のFPVドローンにも搭載出来るオンボードの録画装置、RunCam Mini FPV DVRを試してみました。画面サイズはVGA(640×480)なのでHDという訳には行きません。テストにはFPV用としては一般的な性能である手持ちのFPVカメラを2つ使用しました。カメラの性能に引っ張られている気がしますがVGAの画質には及ばない結果でした。もっと性能の良いカメラが見つかったらまた試してみたいと思います。

使用したドローンは小型なWalkera Rodeo 110です。特別なマウントを作ることなくウレタンフォームで保護してバッテリーと一緒に縛りつけることにしました。実用上これで十分な気がします。

1. RunCam Micro Swift (1/3″ SONY Super HAD II CCD, 600VTL)


FPV飛行するのには十分な性能のカメラです。色合いが鮮やかで視認性が良いです。録画されている画像は、ほぼゴーグルで見たままのものです。ゴーグルのDVRで録画した画像と並べてみてもノイズが無いだけでほぼ同じでした。

2. RunCam Nano (1/3″ CMOS Sensor, 650VTL)


650VTLで新しいカメラなのでMicro Swiftよりやや詳細な録画が出来ました。発色は今ひとつな気がします。

実際の録画をご覧ください。

左がJumper T8SG PLUS, 右がDevo10

FPVドローン用の送信機はWalkera Devo10を使用していて気に入ってはいますが、遠出をするときに大きくて重いところのが問題です。そこで入手したのは格安で小型軽量なJumper T8SG PLUSです。出張先にTiny7を持っていく時などにベストマッチです。

Devo10はマルチプロトコル化するためにDeviationというファームウェアに入れ替えた上にRFモジュールも交換しています。T8SGは、最初からDeviationが入っていてRFモジュールも各種プロトコルに対応したものが入っています。安いのに最強のマルチプロトコル送信機と言えます。

ただし技適は今の所無いようですので日本では使用できません。マルチプロトコルでは無いモデルでT8MPが技適マークの付いてものがあるという話しですし、T8SG PLUSの技適取得の噂もあるので期待したいと思います。

ステックが安っぽく感じますが、実際に飛行させてみると問題はありません。PLUSはジンバルにホールセンサーを使用しているそうですので耐久性もあると思います。

Deviationですので設定はDevo10と同じです。色々なところで公開されているDevo+Deviation用のテンプレートも流用は出来ますがステイックの極性が違ったりスイッチの割当は全く違うので、それなりに調整が必要です。私の使用しているテンプレートを下に貼り付けて置きます。

Tiny7T8SG.ini – Tiny7用ですが6chの汎用設定として使えます。SW GがARM用、3ポジションのSW Aが割り当ててあります。またPitchとRollのスティック操作に合わせてThrottleを30%追加するようにMixerが設定されています。PitchとRoll操作で機体が浮き上がるようであれば調整が必要です。これは自分で作った設定です。

InductrixFPVT8SG.ini – Inductrix FPV専用です。Throttleのトリムを上にあげてStabilityモードとAcroモードの切り替えです。SW Aを中央にするとフルレート、その他の場所で70%のレートになります。どこかで出回っていたInduxtrixFPVテンプレートをT8SG用に調整したものです。

TinyWhoopの飛行中の動画をFatSharkのDVR機能で録画して公開していますが、どうせならもう少し綺麗な動画が撮りたいと思っていました。そのためには機体上にDVR機能を持たせるのが一番良いのです。究極はGoPro Hero5 Sessionを期待の上に乗せることですが、それなりの大きさの機体が必要です。小さい機体用として、今まで知っていたもっともコンパクトなDVR機能付きカメラはRunCam Split miniです。かなりコンパクトですが、普通のブラシモーターのTinyWhoopに載せるのは無理があります。と、あきらめていたところCYCLOPS 3 V3という素敵なDVR付きカメラがあることをFaceBookの投稿で知りました。

カメラの形状からしてTinyWhoop用な感じがします。とりあえずTiny7の予備のキャノピーに取り付けてみました。ちょっと奥まったところに付いてしまいましたが、まずはこれで飛ばしてみることにします。この位置では機体の映り込みは避けられませんが、それもTinyWhoopらしくて良いとも思えます。

気になる重量は1.2gの増加で済みました。飛行にはほとんど影響が無いものと思います。それより消費電力は確実に上がるでしょうから飛行時間は短かくなると思います。

実際に飛ばしてみると、ほぼオリジナルのTiny7と感覚的には同じでした。録画中であることはFPV画面で確認出来ます。スペック的には1080P/30FPSですが、カメラも小さいので画質についてはあまり期待しない方が良いです。FPVゴーグルで録画するよりは良いくらいに考えて置くべきです。

カメラを前方においてフレームが映らないカメラマウントも作成してみました。狙い通りに作成できましたが、どうもレンズ部分が緩んでしまったようでピンぼけになってしまいました。実験としては完了なので、また暇が出来たら組み直してみたいと思います。

FPV飛行の強い味方FatShark Dominator V3のファンが回らなくなりました。断線した話などを見かけたのでファンの部分をばらしたりしましたが、結局はバッテリーの問題でした。このゴーグルのバッテリーからは二つの線が出ていて、ひとつは本体、もうひとつがファンに接続されます。単純にファンの方のコネクターに電圧が出なくなっていました。バッテリーをばらすのも今一つですし、世間で良く行われている本体の中からファンの電源を分岐する改造を行うことにしました。これは本体の電源コネクターに電源を供給したらついでにファンも回してしまえというものです。本体の許容電圧とファンの電圧が違うため、別々のコネクターになっているようです。2Sのバッテリーを使用する分には共通にしてしまっても問題はありません。外部電源を使用する時は要注意。

このビデオの主目的は特殊なレシーバーのためのケーブルの埋め込みですが、ついでにファンの電源ケーブルも取り付けています。分解の仕方も良くわかるので、これを参考に行いました。


単純に電源コネクターのピンに接続するだけです。一番難しいのは分解の仕方だけです。


ヘッドバンドの裏側にあたるところに隙間があるので、穴とか開けなくてもケーブルは外に出せます。ちょっとベルトが通しにくくなるのでフェースプレートを付ける前にベルトを入れておいた方が良いです。

FPVドローンのRC、送信機はWalkera Devo10にDeviationファームウェアを入れたものを使用しています。これ一台でRodeo110と3機あるTinyWhoopすべてを操縦出来るのでとても重宝していますが、突然電波が止まってしまうようになりました。最初は電池が少なくなって電波が止まるのかと思っていたら、だんだん症状が悪化し電源入れてしばらくすると必ず電波が出なくなるようになりました。ディスプレイには何も異常を知らせるようにメッセージはありません。純粋に電波を発射するRFモジュールの故障のようです。

Walkeraから純正のRFモジュールも出ているので中国の通販サイトTAOBAOで探してみましたが、純正品は見つかりませんでした。代わりに四つの異なったRFモジュールが一体になった製品を購入しました。これはDeviationでより多くのプロトコルをサポートするためのものです。いずれ、この改造をしようと思っていたので渡りに船です。


上のリンク先の価格はちょっと高いです。中国での相場は190元弱、日本円だと3300円ほどです。


オリジナルのRFモジュールと入れ替えてリード線を3本半田付けすればハードウェアの改造は終了です(たぶん)。

あとはDeviation(v5.0.0)の内部のHARDWARE.INIを編集します。下のようにRFモジュールを使用するためにコメントを外します。(最初は以下のすべての行がコメントアウト(行頭にセミコロンがある)されていました)
note: HARDWARE.INIはDEV10のENTを押しながら電源を上げてUSBケーブルをPCに接続すると見えるUSBドライブの中にあります。

[modules]
; there is no need to enable the cyrf6936 module unless
; it is wired to an alternate port. It is Enabled automatically otherwise
; enable-cyrf6936 = B12
; has_pa-cyrf6936 = 1
enable-a7105 = A13
has_pa-a7105 = 1
enable-cc2500 = A14
has_pa-cc2500 = 1
; enable-nrf24l01 = A14
; has_pa-nrf24l01 = 1
; enable-multimod = A13

コメントにあるようにcyrf6936(DEVO10のオリジナルRFモジュール)の部分はコメントを外さなくても認識されます。残りのa7105, cc2500, nrf24l01のコメントを外して起動したところ、nrf24l01のモジュールが見つからないというメッセージが出て立ち上がらないのでコメントアウトしました。購入したモジュールの故障か、Deviationのバージョン、はたまたハードウェアの改造に足りないところがあるのか、今のところ不明です。とりあえず現在のところ必要はないので、そのままにしておきます。

これでCYRF6936, A7105, CC2500と3個のRFモジュールが使えるようになり使用できるプロトコルが増えました。

手持ちのレシーバーで今まで使用できていなかったFrSkyで構成してうまく動作することが確認できました。当然、今まで通りDSMXもDevoも使用できます。

Kingkong/LDARC Tiny7の調整も落ち着いてきて、FPVでの室内飛行練習再開しました。しかしながら電波の飛びが操縦系、FPVとも良くないので家の中でさえ電波を失ってしまいます。Induxtrix FPVだと、まったく問題なく家の中をどこでも飛び回る事ができます。ということでTiny7の改造です。

[ レシーバー ]

右側の大きなやつを付けていました。後から付けたものですが、おそらくTiny7の受信機セットでDSMXを選択した時と同じものだと思います。アンテナが2本も出ているのですが弱いです。FPVの画面が見えているうちにコントロールが効かなくなりプロペラが止まります。先日作成したWhoop Proを使用した機体では家の中で問題が出たことが無いので、それと同じ小型軽量なDSMX Proという受信機に交換しました。これで家の中をどこへでも飛ばすことができるようになりました。

[ FPVアンテナの交換 ]

操縦は出来るようになったもののFPVの画像も今一つです。家の中で完全に画像が途絶えてしまうポイントもあります。VTX(FPV画像の送信機)はFCに内蔵されているので交換というわけにはいきません。そこで注目したのがアンテナです。FCからエナメル線が出ているだけの簡単なアンテナですので、もうちょっとマシなものに交換しました。


FC上にはアンテナ用にスルーホールがひとつ開いているだけなのでアンテナのシールドをGNDに接続するためのリード線を付けます。


エナメル線アンテナを外したスルーホールに新しいアンテナの心線を取り付けます。シールドに取り付けたリード線は一番近いGNDである受信機用のGNDに取り付けました。


なるべく小さくて軽量なアンテナにしたので違和感は少ない。効果も目標を達成。家の中をどこへでも飛ばせるようになりました。
が、、、送信機の不具合でしばし練習出来なくなった 🙁

いつも通りの設定にOSDとブザーが増えただけと思ったら、色々と新しい体験がありました。

[ レシーバーの設定とバインド ]
Betaflightの設定は以下の通り
– ConfigurationでUART3をオンにする
– ReceiverタブでReceiver Type: SERIAL, Serial Receiver Provider: SPEKTRUM2048に設定

バインドのやり方は特別ではありませんがDMSXのバインドをコマンドだけで行うのは初めてでした。以下、手順です。
– BetaflightのCLIでset spektrum_sat_bind=9を投入、続いてsaveを投入
– Betaflightから切り離しバッテリーを接続する、レシーバー上のLEDが点滅しバインド準備が出来たことが分かる
– 送信機からバインド
– バッテリーを外し、再度Betaflightに接続する
– BetaflightのCLIでset spektrum_sat_bind=0を投入、続いてsaveを投入

[ OSD ]
ディフォルトでオンだったのでFPVゴーグルを除くと沢山の情報が見えている。RSSIは別途オンにしないと情報が出なかった。
最初は電圧くらい見るだけで良いかと思いましたが、沢山情報があるのはFPV画面を録画しておいて後から評価するためなのだと、どこかで読みました。これは納得です。GPSなどデータの無い項目はBetaflightからオフにして以下のような状態に落ち着きました。今後、飛ばしながら必要のないものを削って行きます。(まだAltitudeも余分だった)

[ ブザー ]
BetaflightのModeにもスイッチに連動してブザーをならすオプション(beeper)があるので、何かしら設定が必要かと思いました。実際のところ、何も設定しなければ目的の動作になっていました。バッテリー低下アラームはじめ沢山の設定がありますが、ディフォルトのすべてオンで使用しています。送信機のスイッチをオフにして電波を失うとブザーが鳴り続けるので、それを機体発見に使います。-> Low batteryのアラームはうるさいのでオフにしました。Low batteryの設定電圧も高すぎるので下げつつ適正値を探しています。

[ Betaflight configuration ]
例によってProject Mockingbirdに従っています。完全にこの文書通りに設定しました。

[ ファームウェアのアップデート ]
出荷されてきたファームウェアのバージョンはBetaflight 3.2.0でした。Mockingbirdでは3.2.2以上となっていますので3.3.1に更新しました。

OMINIBUSはTiny7で使用していたSPACINGF3とは違ってBOOT/DFUモードでファームウェアを書き込む必要があります。
– FC上のBOOTボタンを押しながらUSBケーブルを接続します
– Betaflight Configuratorの右上に自動的に現れるポートが通常のCOMxではなくDFUになっていれば良いのですが、COMのままの場合はDFUドライバーの導入が必要です。わたしの場合、ImpulseRC Driver Fixer ToolをBOOTモードでUSB接続した状態で実行したらDFUドライバーが導入出来ました。詳しくは参考にした「FPVドローラボ」さんをご覧ください。

– No reboot sequenceをオンにして後は通常通りにファームウェアを書き込みます。

OSD、ブザー付きTinywhoopの作成 – ハードウェア編

Inductrix FPVから始まってTiny7とTinywhoopの面白さにハマっています。Tiny7の改造から始まって気がつくと全て自分で選んだパーツの組み合わせで一台出来上がりました。いわゆる自作機ですが、パソコンの自作と同じで部品を組み合わせただけなので、どうも自分では自作と言いにくい。どんな物が出来上がったかパーツリストの覚え書き的に書いておきます。

[ 目標 ]
– ブザーを付ける。FPVで飛ばしていて墜落した時、芝生くらいなら大丈夫だけど、ブッシュに落とすと目視では見つからない。FPVの画像を頼りに探すのもかなり苦労します。Tinywhoopをそんなところで飛ばすなよということですが、林の中で木の間を飛ばすのが楽しいので仕方ない。
– 屋外飛行出来る力強さ。手持ちの820ブラシモーターがかなり強力なので、これを使うことにする。

[ FC ]

F3 Whoop Pro Brushed Flight Controllerという白い基板のFCを見つけたのが新しいTinywhoopを組むきっかけです。OSDとブザーのサポートがあります。OSD(On Screen Display)は飛行中に様々な情報をFPV画面で確認出来るものです。

[ フレーム ]

最初、左のInductrix FPV+のフレームを使いましたが、バッテリーのホールドがいまひとつなのとネジ穴が壊れたので右側のものに入れ替え。

[ モーター ]
Inductrix FPV+のフレームと一緒に購入した820ブラシモーター(直径8mm,長さ20mm)。細かい能力とかは不明。Tiny7のFCを載せてしばらく飛ばしていました。十分に力強くアクロも出来る。そのうち欲が出て8520とかになるかも知れない。あと効果のほどは、まだ良くわかりませんが4枚プロペラを付けています。

[ カメラとVTX ]

Inductrix FPV用の黄色いキャノピー、カメラ、VTXが一体になったもの。実際に入手したものが純正かどうか不明。キャノピーに何の印字もないので、ちょっと怪しい。製品自体は問題なく使用できた。

[ 受信機 ]
(注: このリンク先のブツは値段がおかしい)
手持ちの中で最軽量なDSMX Proというレシーバーを使用した。FCの都合で5V稼働可能であるところがミソ。1gに満たない小型レシーバーながら感度はとても良いです。

[ ブザー ]

FCを買ったついでなので、その販売店に有ったLED付きのものにしました。LEDは使用しない予定。

[ 配線 ]

以上の部品を組み上げました。最初は長さの足りないリード線、OSDを使うために接続済みのカメラとVTXの間の映像信号を途中でカットして間にFCを入れる配線などツギハギしてシュリンクでカバーしたりしましたが、かさばるし信頼性が低くなるので新しいリード線で綺麗に配線し直しました。作業は細かいですが難しいところはありません。

[ 重量 ]

バッテリー無しで41.6gとTiny7より10g近く重くなりました。モーターとプロペラによる重量増加が大きいです。力強いので重量増加をカバー出来ていますが、バッテリーの消耗も激しく3分弱しか飛ばせません。Tiny7と使い分けということで割り切っていますが、性能の良いバッテリーを探してみることにします。

OSD、ブザー付きTinywhoopの作成 – 設定編

トイドローンTelloを入手してまる3ヶ月、公式サポートされたゲームパッドGameSir T1dの出荷が始まりやっと完成した感があります。ここで改めて私のTello使用環境やレビューのまとめをしておきます。

[ ジョイスティックで飛ばしたい ]
基本は携帯電話の画面に表示された仮想的なジョイスティックで操作します。しかし機械的なジョイスティックで飛ばす方が楽であるのは間違いありません。発売当初からMFIに準じたGamePadをiPhoneに接続して操縦することは出来ましたが、BluetoohとWiFiの干渉が問題になりビデオがコマ落ちになったり、操縦中に操作が一瞬途切れたりと今一つでした。唯一使えていたのはiPhoneに有線接続するGameViceという製品でしたが高価なのでTelloには不釣り合いでした。やっと最近になりRYZEから正式にサポートされたGameSir T1dというものが発売になりました。
GameSit T1d + Telloがどんなに快適かは次のビデオをご覧ください。こうやって飛ばすのがTelloの一番面白いところだと思います。木にぶつかったりすることを除けば墜落する気がしないです。

[ GameSir T1d Setup ]
最初、どうやって接続するのか悩みます。ポイントは携帯電話の設定画面でBluetoothのペアリングは必要が無いということです。
手順自体は簡単です。
– 携帯電話のBluetoothをオン
– GameSir T1dの電源オン、ブルーのLEDが点滅していなければPAIRボタンを押し点滅させる
– 携帯電話のTelloアプリケーションの設定/Bluetooth controller画面を開き、そこにあるGameSirをクリックし接続する
以上です。接続されると画面上の仮想ジョイスティックが消えます。

[ 電波の飛び ]
わたしのマンションの庭ではWiFi電波が沢山飛んでいるために悪い時には10mから20mくらいで操縦不能に陥ったりします。そこで広い公園まで出かけてテストを行ったところHuawei Mate9を使用した場合100mほどの距離まで飛ばすことが出来ました。WiFiリピーターを使用することも考えましたが機体を目視して飛ばす場合は必要ないと思います。以下、距離テストのビデオです。

[ 追加バッテリーと充電器 ]
ひとつのバッテリーでの飛行時間は10分強と、このサイズのトイドローンとしてはかなり優秀です。わたしのDJI Sparkとあまり変わらないのは驚きです。それでも、その後に1時間半の充電時間があると思うと、やはり物足りません。そのため追加のバッテリーをひとつ購入しました。バッテリーが増えてくるとTello本体を使用しての充電は面倒になります。やはり複数のバッテリーを同時に充電できる充電ハブが欲しくなります。純正品の発売の予定があるようですが、なかなか出てこないので私は自分でコネクターを作って市販の充電器と組み合わせて充電ハブを作りました。キモは充電電圧を4.35Vに設定できる充電器を探すことです。最近になって社外品の充電バブが発売され、それを入手されている人たちもちらほら見受けられます。

純正の充電ハブも出ました!

[ 写真と動画 ]
いずれもWiFi経由で送られてきたデータを携帯電話に保存する方式ゆえ、WiFi接続が悪い環境(沢山のWiFi電波が飛び交う都市部など)では厳しいものがあります。動画はソフトウエアによるスタビライズが入っていますが、時折それがアダになっていわゆるJelloエフェクトも見られます。またカメラの向きが固定なので構図も限定されます。そんなこともあり動画は諦めています。セルフィー的に写真を撮るのは悪くはありません。サンプル写真は過去記事をご覧ください。

[ FPVフライト ]
やってやれないことは無いくらいの印象です。わたしの自宅のWiFi環境が厳しくて別の部屋に飛ばすとコントロール出来なくなるので、いまひとつ楽しくないです。環境が良ければそれなりに遊べるかもしれません。以下、わたしの動画レビューです。

[ プログラミング ]
Telloはプログラムを組んで飛ばすことが手軽に出来ます。
– Scratchで手軽にプログラミング出来ます(実際はセットアップはやや面倒)。詳しくは以前の記事をご覧ください。
Drone Blocks iPhone, iPadアプリケーションでScratchのような方法でTelloのプログラムが出来ます。特別なセットアップとか無いのでScratchより手軽です。TelloだけではなくDJIのドローンもプログラム出来るそうです。
Tello Scripts Manager Androidのアプリケーションです。特徴は、このプログラムから実際に飛行させたログがそのままスクリプトとして使えることと、複数の携帯電話をBluetoothで接続してスクリプトのコピーや同期動作が行えることです。
– Python、ScratchのプログラムバッケージにPython3によるサンプルプログラムが含まれています。それを読めば簡単に自分のPyhtonスクリプトを書くことが出来ます。Androidで走るQPython3やPydroid 3などからでもTelloを制御出来ますので、かなりスマートにプログラミング出来ます。最初、チュートリアルとか書こうと思っていましたが、あまりに簡単なのでやめました。サンプルを読むとわかりますがUDPでテキストをやりとりするだけなのでネットワークが扱える言語であれば何でも簡単にTelloのコントロールが出来ますね。

Inductrix FPVに比べてTiny7が飛ばしにくいのでBetaflightでRateなどを弄ってきました。色々と関連情報を探すうちに行き着いたのがProject Mockingbirdです。BetaflightをTinyWhoop用に最適化するためのプロジェクトで、まさにInductrixのFCでの飛びを実現するためのものです。 #TinyWhoop について多くの情報を発信している人たちは、みなこのMockingbirdについて語っているくらい重要な設定と言えます。

手順はドキュメントに従うだけですが、自分の設定に合わせた部分もいくらかはあります。ドキュメントと違う設定を行ったところだけ書いておきます。

– PROFILE 2 (Angle)
室内用に使用する機体は初心者でも飛ばせるようにAngleモードの設定を小さくしました。ROLL/PITCH/YAWすべて同じ設定でRC Rateを2.00、Super Rateは0.00、RC Expoも0.00にしました。屋外用で強力なモーターに換装した機体はMockingbird設定そのままです。

– FILTER
文書の通り設定したところ、室内用機体だけ小刻みに震えるようになりました。この機体については文書の指示に反してEnable Gyro Notch Filter 1だけはオンにしました。これで震えは収まりました。<- これはFC不調が原因みたいです。飛ばせますが、ジャイロの水平が微妙に狂ってしまう状態なので引退させました。

ModesとかAdjustmentについては以前からの設定を使用しています。

ステップ2として送信機でスロットルのミキシングを行うようになっています。これはエルロンとエレベーターをきった時に自動的にスロットルを連動して上げるように送信機のミキシングを設定するものです。文書ではSpektrumの設定が書かれていますが、わたしはDEVO 10にDedviationファームウェアを入れて使用しています。これについては、下のYoutube Videoに詳しく書かれています。

おおまかなステップを覚書として書いておきます。
– Mixerを開く
– THR(スロットル)をSimpleからComplexに変更しSave
– THR/Complexに戻りMixersを1から3に変更しSave
– Thr/Complexに戻りPage 1は、そのままです(MuxがReplaceになっていること)
– Page 2でMuxをReplaceからAddに変更SrcはAIL(エルロン)、CurveをEXPO 0からABSVALに変更、Scaleを100から30に変更しSave
– Page 3でMuxをReplaceからAddに変更SrcはELE(エレベーター)、CurveをEXPO 0からABSVALに変更、Scaleを100から30に変更しSave
以上で完了です。Transmitter/Channel Monitorで動作を確認できます。

実際に飛ばしてみると、別の機体かと思うほど良くなりました。目視だと室内でヌルヌルと自由自在に飛ばせます。FPV飛行はまだ慣れなくてInduxtrix FPVほど自由な飛行が出来ていません。腕の問題だとは思いますがカメラの性にしたくなりつつあります(カメラ換装の予告?)。あと、フリップもTiny7の既定値では、高度の取れる屋外でしかうまく行きませんでしたが、室内でも出来るようになりました(腕の問題も有って成功率はまだ高くはないです)。