2017.04.29

ドローンレース機とプロポの設定

ドローン修理編。しばらく保管状態にあったレース用のドローン機体を久しぶりに動かそうとしたところ、全く動かない(モーターが回転しない)という相談を受けたので、引き取って診てみました。ちなみに、レース機を触るのは初です、、、

まずは、診断です。
設定は Cleanflight で行っていたということで、Cleanflight (Chrome アプリ)をインストール。
ファームウェアのアップデートが必要というメッセージが出たので、まずは、ファームアップデートから。
尚、Cleanflight は Windows 10 だと、ドライバー関係の設定が必要な模様です。実際、試行錯誤しましたが、結局ファームアップデートはできませんでした。Mac に Cleanflight をインストールして作業することをお勧めします。

  • Cleanflight アプリを起動
  • 左のメニューから「Firmware Flasher」を選択
  • Flight Controller のボードを選択し、最新かつ stable なバージョンのファームウェアを選択(今回の Flight Controller は、SP RACING™ F3 EVO でした)
  • 「Load Firmware [Online]」ボタンを押す
  • 選択したファームウェアのダウンロード完了後、「Flash Firmware」ボタンを押す。

これでファームウェアのアップデートは完了です。次に原因を探っていきます。
プロポの受信機の LED は緑点灯。プロポと受信機のリンクは OK。
Cleanflight の右上の Connect ボタンを押し、左メニューから「Receiver」を選択。

Channel Map を見ると「AETR1234」となっていることから、フタバのプロポと接続していることは認識されている模様です。この状態で、プロポを操作すると上写真の四角で囲んだ箇所の値が上げ下げするはずですが、それが何も変わらない(反応なし)。さらに左メニュー「Motors」で、モータの動作テストを行ったところ、4つとも動作OK。これで原因がわかりました。

原因は、受信機からの Input をフライトコントローラーが取得できていない

ということで、解決するためにまずは接続状態を確認します。
受信機とフライトコントローラーの配線を確認すると UART2 接続で、S-Bus 方式でした。ですので、S-Bus の設定を Cleanflight 上で行えばいいことになります。(リセットされていたのか設定が全くされてない状態だったので、下記の設定を全て行いました)

  • 左メニュー「Ports」、UART2 行の「Serial Rx」を ON に設定し、「Save and Reboot」ボタンを押す。
  • 左メニュー「Configuration」、Receiver 設定の Receiver Mode を「Serial-based receiver (..., SBUS,...)」に、Serial Receiver Provider を「SBUS」に設定し、「Save and Reboot」ボタンを押す。

設定は以上です。
左メニュー「Receiver」を表示させた画面でプロポを操作すると、値が上下するようになりました。

最後に動作確認です。 Cleanflight のドキュメントを見ると、
ARM は、スロットル(LOW)、ヨー(HIGH)、ピッチ(CENTER)、ロール(CENTER)
DISARM は、スロットル(LOW)、ヨー(LOW)、ピッチ(CENTER)、ロール(CENTER)
となっています。モード1でしたので、右スティックを下に入れた状態で、左スティックを右に入れれば ARM しモーターが回転、 右スティックを下に入れた状態で、左スティックを左に入れれば DISARM し、モーターが停止することが確認できました。

cleanflight-Controls

以上です。これでプロポの操作を受けつけるようになりました。
ちなみに、ドローンではプロポの各操作時の設定値が1000~2000(厳密でなくてもOK。1~5の誤差はあっても大丈夫)である必要があります。プロポのサブトリム、エンドポイントの設定をし、この範囲内で動くようにしないと ARM などの操作を受け付けませんのでご注意ください。