自作ドローンレース機のESCの設定をBLHeliSuiteで行う

LINEで送る
Pocket

フライトコントローラーにはCC3DやNaze系などありますが、OpenPilotやCleanflight、Betaflightなどファームウェアをインストールして設定するのが普通です。ESCにも同じようにBlHeliやSimonKなどファームウェアがインストールされていますが、多くのドローンレース機は、ESCのキャリブレーションさえ取っていれば正しく動くことがほとんどであるため、最初はわざわざ小難しいESCの設定をしない人が多いはずです。

BlHeliがインストールされたESCの設定

まずはESCにインストールされているファームウェアごとにESCにアクセスする必要があります。ここからは最近多いファームウェアのBLHeliを元に説明していきます。例えば、LittleBee 20AにはBLHeliがインストールされていて、BlHeliSuiteというWindowsアプリ経由でESCの設定を行うことができます。

BLHeliSuite

ESCへの接続はUSB linkerなどを用いる方法がありますが、それ以外にも、フライトコントローラー経由でESCの設定を行うことも可能です。以下は、Betaflightをインストールしたフライトコントローラーを使って、CleanFlight経由で、BLHeliSuiteにアクセスする方法です。最新バージョンのみ利用可能なのでバージョンに注意しましょう。

Flash and Program BLHeli ESC via Cleanflight – Flight Controller – Oscar Liang

BlHeliで設定できる各種設定値

BLHeliSuiteに接続できたら(※接続設定記事は今後別途予定、不明点あればコメントしてください。)、以下のような画面が出てくるはずです。
BLHeliSuite

上記はCleanFlight経由でアクセスしているため、上部のメニューバーの「Select ATMEL / SILABS」から「SILABS BLHeli Bootloader(Cleanflight)」を選択して、CleanFlightに接続するときと同じ「シリアルポート(Ex.COM3)」「レート(Ex.115200)」を選択して、Connectしています。

設定については、本家のドキュメントを参考にします。
BLHeli SiLabs Rev14.xのマニュアル

BLHeliの設定値

BLHeliの設定値

モータータイミング=Communication(Motor) Timimg

一概に高ければ良いわけではなく、低いMotor timingは低KVのトルク型、高いMotor timingは高KVの回転数型のモーターのパワーを引き出してくれるということ。デフォルトの設定は「Medium」だが、レース用によく使われる高KVのモーター(2000KV-3000KV)であれば、「Medium-High」もしくは「High」に設定してみるのも一つ。機体やプロペラ、モーターのスペックにより最適な場所は違うので、自分の気持ちいい所を見つけるのが大事。

参考:車のモーターの記事
Tech Know-How: Motor Timing Explained – RC Car Action

PMW Frequency/Dumped

ESCの周波数を変化させることで、モーターのレスポンスに変化を与えることができます。周波数が低いと瞬発力があるが、周波数が高いほうが、より精密な制御ができます。周波数の変化による違いについては下記記事が参考になります。

参考:ブラシ付きDCモータ用ESCの基本動作原理
ブラシ付きDCモータ用ESCの基本動作原理 | よくあるご質問(FAQ) | アキュヴァンス ACUVANCE

BLHeliの設定では、「High」「Low」「Dumped Light」が選択できますが、Dumped LightもHigh Frequencyな設定です。Highとの違いですが、Dumped Lightは、PWMのOFF時の間隔がより短いということです。実際に使ってみるとわかりやすいですが、スロットルを上げ下げするときのレスポンスがよくなり、スロットルをOFFにした時に、これまで「スーーーー」っと回転が収まっていたのが、「キュッ」と止まるようになります。

ドローンレースのように、急激な回転数の変化が必要な場合には、自分の操作スタイルに応じて、Dumped Lightを入れるのも一つだと思います。なお、ESCによっては、Dumped Lightできない場合がありますのでご注意ください。

Demag Compensation

Demag=消磁、Compensation=賠償、と直訳すると訳がわかりませんが、BLHeliの説明によると、モーターの制御不能状態になるのを守ってくれる設定のようです。設定値は「OFF」「Low」「High」があり、デフォルトはLowです。自動的にモーターパワーをカットしたり、何らかの障害でモータータイミングがわからなくなった場合などに、ある程度予想して回転させてくれる機能のようです。

OFFにすることで、モーターパワーの減衰がなくなるので、より本来のパワーを引き出すことができるのでしょうが、保護機能の一つなので、安易にOFFにするのはやめておいた方が良さそうです。Highにすることで、よりパワーカットなどを行うので、私はまずはLowのままにしています。

Startup Power

スロットルを上げ初めのパワーの値を設定するようですが、上げ過ぎるとモーターやESCに過度な負荷を与えてしまいます。まずはデフォルトの設定で良いと思います。

Closed Loop Mode

デフォルトはオフになっているマルチコプター用の設定です。このクローズドループモードは、スロットルの値に応じて、回転数を設定できるモードのようです。このモードに変えたほうが良いケースがわかりません。(どなたか教えて下さい)

Motor Direction / Input Polarity

Motor Directionは、モーターの回転方向を変えることができる設定です。モーターの配線を付け間違えた時にいいですね(違)。Input Polarityは、スロットルの動きを反転させることができるようです。これらは、通常動かすことはない設定になると思います。

PPMのMin/Max Throttleなどは、FCなどの設定時に行ったキャリブレーション内容が入っていると思います。その他にも、Beepの設定や各機能の説明などがあるので、上記のPDFなどのドキュメントを確認してみてください。

LINEで送る
Pocket

こちらもおすすめ!

2 Responses

  1. kikupapa より:

    初めまして、Kikupapaと申します。
    たいへん貴重な記事で、いつも参考にさせて頂いております。
    早速ですが質問をさせて頂きます、CleanFlight経由ESCの書き換えについてですが、ファームウェアがBLHeli以外は書き換えできないのでしょうか?
    シリアルポー,レートを選択して、Connectしていますが「ReadSetup」を押しても「Unknown Esc」で認識してくれません、お気付きの事がありましたらご教授いただければありがたいのですが。

    • YOKOTA より:

      おそらく、BlHeliSuiteでの設定の話と解釈していますが、
      ESCのファームとしてSimonなどではなくBlHeliもしくはBlHeliSであることが前提です。
      ESCのファームはなんでしょうか?
      あと、「Connectしています」とありますが、ESCに電源が来ていないと認識できませんので、
      セットアップ済の状態であれば、リポ電源をドローンに投入後にReadSetupしないとつながらないと思います。
      上記確認してみ問題あれば、またコメント下さい。よろしくお願いします。

コメントや質問・相談はお気軽にどうぞ!(承認してから反映しますので投稿後しばらくお待ちください。)

メールアドレスが公開されることはありません。