2014年3月28日

deviation 4.0.1とNRF24L01モジュールでHiskyヘリを飛ばす

さて、deviationでHiskyやSLTプロトコルを扱うのに必要なNRF24L01モジュールですが、Banggoodでだいぶ前にSKU026794をポチって持っていました。
しかも2個も。なんせ$1.8ですからね。
当時はdeviationで対応できるという噂すら無かったのでRC用にと思ったわけじゃないんですが、電子工作の無線でも定番のモジュールなのでいくつか持っていて損はないかなーと思いまして。

上記はパワーアンプ無しの低出力モジュールですが、今ではdeviationショックのおかげでパワーアンプ付きモジュールも売られているようです。deviation情報にはすばやいマイクロヘリ倶楽部さんでも扱っていますね。

ウチはこの手のお遊びは外に電波が漏れない範囲で、というスタンスなので当然アンプ無しで十分です。


これをdevo7eにハンダ付けするんですが、せっかく10ピンヘッダがついてたので、なんとなく手元にあった秋月10ピンフラットケーブルを2つに切って使うことにしました。

まあ、使ってなければ電波も出さないので普段は外す必要無いんですけどね。devoの挙動が怪しい時に原因切り分けのために外すことがありそうなので無駄ではないでしょう。

結線はHackModsに綺麗な写真と説明があるのでそちらを参考にすると楽です。
http://www.hacksmods.com/2013/05/nrf24l01-devo7e-pinout/

HackModsで使っているモジュールのピン配はbanggoodモジュールとは違いますが、banggoodモジュール側にもシルク印刷があるのでどれがどれなのかはすぐ分かります。
若干文字がつぶれ気味なので一応書いておくと、写真の並びで
VCC   VCC
CE     CSN
SCK   MOSI
MISO  IRQ
GND   GND
となっています。

SPI通信担当のSCK MOSI MISOはdevoのシールドされてる無線モジュールの足に並列に、チップセレクト的な役割と思われるCSNはdevoで余っている汎用IOである、SWD端子のTMSまたはTCKに繋ぎます。

このdevo側のTMSとTCKってのはCPUのデバッグ用端子なんですが、USBでファーム書き換えができてる限り使う必要が無いのでdeviationファームウェアではデバッグ機能をOFFにしてCPUのこのピンを汎用IOモードにすることで追加モジュールのON/OFFに使っています。

なので、普通のdeviationは自分自身の無線チップに加えて追加モジュールを2個までコントロールできるわけですね。
どんなモジュールをTMSとTCKに繋いだかは、TX.iniに記述します。この指示についてもHackModsさんの上記ページに書いてあります。うちの場合写真のとおりTMSに繋いだので
  • enable-nrf24l01 = A13
という設定をTX.iniに記述しました。
ピンヘッダがジャマすぎて電池ケースと干渉しちゃうので、
ここになんとか横向きに押し込みました。

後はdevoで新しいモデルを作り、プロトコルでHiskyを選ぶといい…はずなんですが、スティックと出力の対応がめちゃくちゃすぎてゼロから作るのはうまく行きませんでした。
HT-8を使ってた時もなんですが、どうも他の人の情報どおり120度スワッシュタイプを選んでも、サイクリックの操作がちゃんとスワッシュに反映されないんですよね…。なんとなく左右っぽく動いたり前後っぽく動いたりはするんですが、左右のサーボが対称に動かないと言いますか…。

で、あきらめてdeviationフォーラムでHappyHarryさんが設定ファイルを配ってるのを拾ってきました。これはadvancedミキサーを使ってて、だいたい良い感じに動きます。

が、少なくともうちの環境ではこれでもまだ完全ではなく、

  • スティックの前後と左右を入れ替えました。具体的にはMixerの1-AILをCyclic2に、2-ELEをCyclic1にしました。
  • 1-AILだけ、サーボの左右の動きが非対称だったのでScale-を180に増やし、Scale+を60に減らしました。
  • それ以外のDR調整等はもっと下の方のCYC-AILやCYC-ELEで調整することにしました。

という変更が必要でした。何故でしょうねえ…。もしかするとモード1のdevoを買ってスプリングだけ移植してモード2にしてるからかもしれませんが…Hisky以外ではこういったスティック方向違いみたいな問題は特に無いんですよねぇ。
一番気色悪い設定をする羽目になったAILスケール。
そもそもここをいじるのが正しい対策かすら不明です。

まあ、advancedミキサーを少なくとも試行錯誤しながら使う覚悟が無いとHisky設定は無理そうです。

バインドは、初回のみバインドボタンを押してカウントが出てる間に機体の電池を繋ぐ必要がありました。2回目以降はプロポをONしてからゆっくり好きな時に電池を繋げばOKです。Hisky純正プロポとだいたい同じですね。


さすがに慣れたdevo7eなので操作感は悪くありません。
ヘリの方もnano機体にV933基板というキメラ君なのでまだ十分扱えていませんが、ノーマルモードでホバったりサークルしたりする程度だとnano君に匹敵するくらい安定して素直に操作できます。

まあ、X-6Sで困らないくらい手が大きい人なら無理してdevoに統一する必要は無いと思いますが、少なくともウチではだいぶ操作性が向上しました。特にスロットルホールドを入れる反応速度が格段に向上しましたね(笑)

でもあくまで低パワー室内限定なので,V922を外で飛ばす時は今後もX-6Sを使うつもりです。

6 件のコメント:

  1. やっぱりモジュール付けるだけではいかないんですねぇ~!(^○^;)
    ちなみに、Banggoodで「NRF24L01」で検索するだけでも様々なセット?が出てきますね~(^_^;)
    勉強不足で、「for MCU」とか理解できない用語もたんまりですけど、
    パワーモジュール付きだとコレでしょうか?↓
    http://www.banggood.com/2_4GHz-NRF24L01P-+-PA-+-LNA-Long-Distance-RF-Wireless-Module-V3_1-p-88956.html

    返信削除
    返信
    1. いやー、ミキサーの件は単にワタシがdeviationファームの機能を理解してないだけで、さほどトリッキーな設定が必要というわけじゃないです。

      おー、アンプ付きBGにもありましたね。MCUてのはマイクロコントローラユニットの略だと思います。単にCPU、くらいの意味ですね。

      削除
  2. sachiho様
    面白そうなことやられてますね。
    ところで、私のdevo7e-deviationファームはもともとモード1ですが、アドバンスドメニューでは、1-ELEがCyclic2に、2-AILがCyclic1に自動的に割り当てられます。
    なので1chはELEです。モード2だとAILなんでしょうかね?

    返信削除
    返信
    1. うーん、試しに新規モデルを作って、standard設定→advancedに変更、としたら、1-ELEはCyclic1になりました。やっぱりモード1と2はなんか違うのでしょうかねぇ…

      でも、トランスミッタメニューのチャンネルモニターでは、ちゃんとエルロンスティックはエルロン、エレベータはエレベータ、と認識されたとこの数値が変化するので、ソフトの認識するスティック割り当てと一致してると思うんですけど…

      削除
  3. ふむふむ。。。
    過去記事もあわせて、技術情報満載ですね~。
    前の記事のご回答もありがとうございましたー!

    ところで、Hiskyのは、エルエレのD/Rを40とかにしてもだめですか?

    返信削除
    返信
    1. 元々ヘリを始めたのがdeviationを使ってみるためだったので、久々に原点に戻ってきた気分ですねー。何かのお役に立てば嬉しいです。

      エルエレの動作範囲が大きすぎると狂ったような動きをする、てのはよく聞くのでほとんど0くらいまでいろいろ試したんですが、ダメでした。
      まあ、おかげでadvancedミキサーをなんとか使えるようになったので、今は設定やり放題で以前より快適です♪

      モード1のnobさんとも少し挙動が違うようなので、うちのdevoのモード2化手順がよろしくないのかもしれません。

      削除