FPVドローンのFC上で動作し、機体の姿勢やモーター出力を制御するファームウェアです。
ジャイロセンサーから機体の動きを読み取り、送信機から受け取った指示に合わせて、各モーターの出力を非常に短い間隔で調整します。
受信機、VTX、OSD、GPS、LED、ブザーなどの設定も管理できます。ただし、Betaflightをインストールしただけで自動ホバリングや障害物回避ができるわけではありません。
FCへ接続し、Betaflightの設定、ファームウェア更新、動作確認などを行うための設定アプリです。
パソコンへインストールして使用する方法と、対応ブラウザーからWebアプリとして使用する方法があります。旧来は「Betaflight Configurator」という名称が一般的でした。
Betaflight Appは設定用の画面であり、機体を実際に制御しているのはFC内のBetaflightファームウェアです。そのため、AppとFCのファームウェアには互換性の合う組み合わせが必要です。
電子機器の内部で動作し、その機器を制御するためのソフトウェアです。
FCにはBetaflight、ESCにはBLHeli_S、Bluejay、AM32など、受信機にはELRSなど、それぞれ別のファームウェアが入っています。
「ファームウェアを更新する」という場合、どの部品を更新するのかを確認する必要があります。FCを更新しても、ESCや受信機のファームウェアは通常更新されません。
そのFC専用に用意されたBetaflightファームウェアの識別名です。
同じSTM32F405を使っているFCでも、ジャイロ、モーター出力、UART、OSDなどの接続先は基板ごとに異なります。その違いをBetaflightへ伝えるのがターゲットです。
間違ったターゲットを書き込むと、接続はできてもジャイロやモーター出力が動かない場合があります。更新前に現在のターゲット名を記録しておくことが重要です。
使用するFCや機能に合わせて、必要な内容を含むBetaflightファームウェアをオンラインで作成する仕組みです。
必要な通信方式、GPS、VTX制御などを選び、FCへ書き込むファームウェアを生成します。不要な機能を省くことで、限られたフラッシュメモリーを効率よく利用できます。
必要な機能を選び忘れると、書き込み後に該当する設定項目が表示されなかったり、機器を認識できなかったりします。
Betaflight App内で、FCへファームウェアを書き込むための機能です。
ターゲット、バージョン、ビルドオプションなどを選び、ファームウェアを取得してFCへ転送します。FCが通常接続できない場合は、DFUモードを使用することがあります。
書き込み前には設定のバックアップを取り、正しいターゲットであることを確認します。
FCの通常のファームウェアを起動せず、STM32の書き込み機能を使ってファームウェアを転送する状態です。
ファームウェアが壊れて通常接続できない場合や、完全な書き換えを行う場合に使います。Betaflight Appの接続先には、COM番号ではなく「DFU」と表示されます。
DFUモードで認識されない場合は、BOOTボタン、USBケーブル、ドライバー、USBポートなどを確認します。
電源が入った直後に動作し、通常のファームウェアを起動したり、新しいファームウェアを書き込んだりするための小さなプログラムです。
Betaflightが正常に起動しなくても、Bootloaderが動作すればDFUモードから復旧できる可能性があります。
ファームウェア本体とBootloaderは役割が異なります。
FCをBootloaderまたはDFUモードで起動するための小さなボタンです。
一般的にはBOOTボタンを押したままUSBを接続するとDFUモードへ入ります。製品によって手順が異なる場合があります。
非常に小さく壊れやすいため、工具で強く押さないよう注意します。「BOOT」と書かれた2つのパッドを一時的に接続して同じ操作を行うFCもあります。
Command Line Interfaceの略で、文字による命令を使ってBetaflightを設定する画面です。
設定名と値を直接入力できるため、通常画面に表示されない項目の確認や、設定のバックアップ・復元などに使われます。
内容を理解せずに他機種のコマンドを貼り付けると、モーター、受信機、センサーなどが動かなくなる可能性があります。
Betaflightのほぼすべての設定を、CLIコマンドとして出力する機能です。
CLIでdumpを実行すると、初期値と同じ項目を含む多数の設定が表示されます。完全な記録として役立ちますが、出力量が多くなります。
別バージョンや別ターゲットへそのまま復元すると、互換性のない設定まで書き込む可能性があります。
現在の設定について、基本的に初期値から変更されている項目を中心に出力する機能です。
CLIでdiff allなどを実行して使用します。Dumpより短く、機体固有の設定を確認しやすいのが特徴です。
ただし、保存される内容や初期値はBetaflightのバージョンによって変わります。大型アップデート後に古いDiffをすべて貼り戻す方法は推奨されない場合があります。
特定の機体、受信機、VTX、飛行特性などに合わせて、複数の設定をまとめて適用する機能です。
項目を一つずつ入力する手間を減らせますが、どの機体にも必ず適合するわけではありません。対象バージョン、機体サイズ、モーター、プロペラなどの条件を確認します。
適用前に説明文と選択項目を読み、現在の設定をバックアップしておくと安心です。
FCの設定を初期状態へ戻す操作です。
原因不明の設定不良を整理したい場合や、別の機体として設定し直す場合に使います。実行すると、受信機、モード、OSD、モーター方向に関する設定なども失われる可能性があります。
初期化前にCLI Diff、スクリーンショット、配線図などを保存します。
FCメーカーが、その基板に必要な基本設定をあらかじめ用意したものです。
モーター出力、ジャイロの向き、UART、内蔵受信機、VTXなど、基板固有の初期設定が含まれる場合があります。
ファームウェア書き込み時にCustom Defaultsを適用しないと、基板の一部機能が動かないことがあります。一方、古いCustom Defaultsを異なるファームウェアへ適用すると問題が起こる可能性もあります。
FCにあるUARTへ、どの機器を接続するか設定する画面です。
受信機のSerial RX、GPS、VTX制御、MSPなどを割り当てます。実際に配線したUART番号と、画面で設定したUART番号が一致していなければ通信できません。
同じUARTへ両立できない機能を重複して割り当てると、正常に動作しない場合があります。
機体全体の基本機能を設定する画面です。
機体形式、モーター通信方式、受信機方式、センサー、ブザー、各種機能などを設定します。バージョンによっては内容が別の画面へ移動していることがあります。
設定変更後に保存と再起動が必要な項目があります。
送信機から受信した各チャンネルの動きを確認・設定する画面です。
ロール、ピッチ、ヨー、スロットル、AUXチャンネルが、送信機操作に合わせて動くか確認します。チャンネル順序、中央値、最小値、最大値もここで確認できます。
プロペラを外した状態で確認するのが安全です。
送信機のスイッチへ、アームや飛行モードなどの機能を割り当てる画面です。
各AUXチャンネルに対して、機能が有効になる数値範囲を設定します。送信機のスイッチを動かしたとき、黄色いマーカーが設定範囲へ入れば機能が有効になります。
ARM、ANGLE、BEEPER、FLIP OVER AFTER CRASHなど、必要な機能を割り当てます。
各モーターの動作、順序、回転方向などを確認する画面です。
画面からモーターを個別に回せるため、非常に便利ですが危険性も高い機能です。作業前に必ずプロペラを外し、機体を固定します。
モーターが回らない場合は、ESC電源、信号線、モータープロトコルなどの切り分けにも使えます。
FPV映像へ表示する情報と、その位置を設定する画面です。
バッテリー電圧、セル電圧、飛行時間、RSSI、LQ、警告、GPS情報などを選択できます。
映像方式やゴーグルによって、使用できる画面サイズや文字の種類が異なります。デジタルFPVでは、別途MSP DisplayPortの設定が必要な場合があります。
VTXの周波数、チャンネル、送信出力などを設定する画面です。
アナログVTXでは、VTX Tableを使って製品が対応する周波数と出力段階をBetaflightへ登録します。SmartAudioやTrampなどの制御配線が必要です。
画面に設定値が表示されていても、配線やVTX Tableが間違っていれば実際のVTXへ反映されない場合があります。
飛行データを記録するBlackbox機能を設定する画面です。
記録装置、記録速度、デバッグ項目などを選択します。ログを解析すると、振動、PID動作、モーター出力、デシンクなどの原因調査に役立ちます。
記録速度を高くすると詳細なデータを得られますが、メモリーの消費量も増えます。
ジャイロ、加速度センサー、気圧センサーなどの測定値を確認する画面です。
機体を動かしたときに各軸のグラフが変化するため、センサーが反応しているか確認できます。モーターを回した際の振動確認に使うこともあります。
センサーの数値は常に多少変動するため、わずかな動きを故障と判断しないようにします。
FCがGPSから受け取った情報を確認する画面です。
捕捉衛星数、緯度、経度、高度、速度などを確認できます。GPS自体が通信していても、屋内では衛星を捕捉できないことがあります。
GPS Rescueを使用する場合は、GPSの通信確認だけでなく、飛行前の衛星捕捉や方角などの条件確認も必要です。
FCと受信機、GPS、VTXなどがデータをやり取りするための通信回路です。
UART1、UART2、UART3のように複数搭載され、各UARTには通常TXとRXがあります。UART番号は基板に印刷されている「T1」「R1」などの数字で確認できます。
電源用の5VやGNDはUARTそのものではありませんが、周辺機器を動かすために一緒に配線します。
UARTでデータを受信する端子です。基板上では「RX」「R1」「R2」などと表記されます。
基本的には、相手機器のTXをFCのRXへ接続します。例えばGPSのTXをFCのRXへつなぐことで、FCがGPSデータを受け取れます。
「受信機を接続するUART RX」と「UARTのRX端子」は、文脈によって意味が異なるので注意します。
UARTでデータを送信する端子です。基板上では「TX」「T1」「T2」などと表記されます。
基本的にはFCのTXを相手機器のRXへ接続します。双方向通信ではTXとRXの両方を交差させて接続します。
SmartAudioのように、FCのTXからVTXへ一方向に命令を送る接続もあります。
MultiWii Serial Protocolの略で、FCと外部機器が設定値や機体情報をやり取りするための通信規格です。
Betaflight Appとの通信、デジタルVTXへのOSD送信、一部の受信機や周辺機器との通信などに使用されます。
PortsタブでMSPを有効にするだけでなく、正しいUARTと配線を使用する必要があります。
FCで作ったOSD情報を、デジタルVTXや映像システムへ送る仕組みです。
アナログOSDのようにFCが映像信号へ直接文字を重ねるのではなく、表示する文字や位置をデータとして送信します。デジタルVTX側が、その情報を映像へ重ねます。
UARTの選択、MSP設定、周辺機器設定などが合っていないと、映像は映ってもOSDだけ表示されません。
UARTを使ってシリアル通信方式の受信機から操縦データを受け取る設定です。
SBUS、CRSF、IBUSなどの外付け受信機を使用する場合に有効にします。Portsタブで、受信機を配線したUARTのSerial RXをオンにします。
SPI内蔵受信機では、通常Serial RXを使わない構成もあります。
主にFutaba系などで利用される、複数の操縦チャンネルを1本の信号線で送る通信方式です。
受信機のSBUS出力をFCの対応するRXパッドへ接続します。SBUS信号は反転されている場合があり、FCによっては専用のSBUSパッドが必要です。
SBUSは基本的に受信機からFCへの操縦データに使われます。テレメトリーには別の配線や方式が必要になる場合があります。
TBS Crossfireで使用される高速なシリアル通信方式です。Crossfire Serial Protocolの略です。
操縦データだけでなく、テレメトリーや機器設定も双方向にやり取りできます。ELRSでもFCとの接続方式としてCRSFプロトコルが広く使われます。
一般的には受信機TXをFC RX、受信機RXをFC TXへ接続します。
主にFlysky系受信機で使用されるデジタル通信方式です。
複数チャンネルの操縦データを1本の信号線でFCへ送れます。BetaflightではSerial RXを有効にし、受信機プロトコルとしてIBUSを選択します。
SBUSやCRSFとは異なる方式なので、設定を合わせる必要があります。
主にFrSkyで使用される、操縦データとテレメトリーを1本の信号線で扱える通信方式です。
配線を減らせる利点がありますが、信号反転、半二重通信、FCのパッドなどに注意が必要です。
受信機、FC、ファームウェアの組み合わせによって設定方法が異なります。
低遅延、長距離、高い更新速度を特徴とするオープンソースの無線操縦システムです。
送信モジュールと受信機を同じ周波数帯、互換性のあるファームウェア、同じバインド方法で使用します。FPVでは2.4GHz版が広く使われ、用途に応じた別周波数帯の製品もあります。
Packet Rate、送信出力、Dynamic Powerなどを設定できます。高いPacket Rateが、あらゆる状況で最長距離になるわけではありません。
TBSが提供する、長距離・高信頼性を重視した無線操縦システムです。
送信モジュールとCrossfire受信機をバインドして使用し、CRSF通信で受信機とFCを接続します。テレメトリーや機器設定にも対応します。
「Crossfire」は無線システム名、「CRSF」は主に機器間で使われる通信プロトコル名です。
機体側の情報を受信機から送信機へ送り返す機能です。
バッテリー電圧、RSSI、LQ、GPS、飛行モードなどを送信機で確認できます。音声警告やログ記録にも利用されます。
受信機によって、送信できる情報や通信距離が異なります。操縦信号が届いていても、返信側のテレメトリーが先に途切れる場合があります。
送信機と受信機を組み合わせ、互いに通信できる状態にする作業です。
受信機のボタン、電源の入れ直し、設定画面、バインドフレーズなど、通信システムによって方法が異なります。
バインドできても、FCとの配線やBetaflight設定が間違っていればReceiverタブは動きません。
ELRSなどで、送信機と受信機へ同じ文字列を設定し、自動的に組み合わせる方法です。
同じバインドフレーズから生成された識別情報を持つ機器同士が接続します。受信機のボタン操作を省き、複数の機体を同じ送信機で使いやすくできます。
文字列そのものだけでなく、ファームウェアの互換性や周波数帯も一致している必要があります。
送信機から届くチャンネルを、ロール、ピッチ、スロットル、ヨーへ割り当てる順序です。
順序が合っていないと、スロットルを動かしたのにロールが反応するなど、誤った操作になります。
Receiverタブでスティックを1本ずつ動かし、正しい項目が反応するか確認します。
基本4チャンネルを、Aileron、Elevator、Throttle、Rudderの順で並べたチャンネルマップです。
日本語では、ロール、ピッチ、スロットル、ヨーの順に相当します。AETR1234のように表示されることがあります。
送信機側とBetaflight側で順序を一致させます。
基本4チャンネルを、Throttle、Aileron、Elevator、Rudderの順で並べたチャンネルマップです。
日本語では、スロットル、ロール、ピッチ、ヨーの順に相当します。
AETRとどちらが優れているというものではなく、送信機から出力される順序に合わせる設定です。
ロール、ピッチ、スロットル、ヨー以外の追加チャンネルです。
送信機のスイッチやつまみを使い、アーム、飛行モード、ブザー、GPS Rescueなどを操作します。BetaflightではAUX1、AUX2のように表示されます。
送信機側でスイッチへチャンネルを割り当てたうえで、Modesタブから機能を設定します。
RSSI情報を、受信機の特定チャンネルからFCへ入力する設定です。
以前の受信機や一部の構成では、RSSIをAUXチャンネルの数値として送っていました。その場合、Betaflightで該当チャンネルを指定します。
ELRSやCrossfireなどでは、デジタル通信からRSSIやLQを受け取れるため、RSSI Channelを設定しないことが一般的です。
Analog-to-Digital Converterの略で、アナログ電圧をMCUが扱える数値へ変換する機能です。
FCでは、バッテリー電圧や電流センサーの出力を読み取るために使われます。一部の古い受信機構成では、アナログRSSIをADCで読み取ることもあります。
Betaflightの設定にあるADC関連項目は、何のアナログ信号を測定するかに関係します。
FC基板上に搭載され、SPIという通信方式でMCUへ直接接続された受信機です。
外付け受信機のようにUART配線を必要とせず、小型・軽量化に向いています。Tiny WhoopのAIO FCなどでよく使われます。
受信機の更新方法やバインド方法が外付け受信機と異なる場合があります。また、FCファームウェアのビルドに対応機能が含まれている必要があります。
受信機からFCへ、どの通信方式で操縦データを送るかを指定する設定です。
CRSF、SBUS、IBUSなどから、使用している受信機に合うものを選びます。PortsタブのSerial RX設定と、Receiver設定のRXプロトコルの両方が必要です。
送信機と受信機がバインド済みでも、ここが間違っているとチャンネルは動きません。
送信機が1秒間に操縦データを送る回数の設定です。例えば250Hzなら、理論上は1秒間に250回送信します。
高いPacket Rateは操作更新を速くできますが、通信距離や受信感度との間にトレードオフがあります。低めのPacket Rateは、一般に長距離や厳しい電波条件で有利になる場合があります。
送信モジュールと受信機が同じ設定に対応している必要があります。
送信機で選択しているモデルと、受信機側の識別情報を対応させる機能です。
複数の機体を同じ送信機で使う場合に、間違ったモデル設定のまま飛ばすことを防止できます。
Model Matchの番号が一致しないと、バインド情報が合っていても接続できません。突然接続できなくなった場合は、送信機で正しいモデルを選んでいるか確認します。
対応するESCの設定確認、ファームウェア更新、回転方向変更などを行うWebベースの設定ツールです。
FCへUSB接続し、ESCパススルー機能を利用して4基のESCを読み出します。主にBLHeli_S、Bluejayなどに対応する構成で利用されます。
すべてのESCファームウェアに対応するわけではありません。接続前にESCの種類を確認します。
ブラシレスモーター用ESCの制御ファームウェアと、その系列を表す名称です。
複数の世代や種類があり、BLHeli、BLHeli_S、BLHeli_32は同じものではありません。対応するMCU、設定ソフト、機能が異なります。
ESCに合わないファームウェアを書き込むと、モーターが動かなくなる可能性があります。
主に8ビットMCUを使用するESC向けのファームウェアです。
小型機から5インチ機まで広く使われてきました。DShotを利用できますが、標準状態で使用できる機能はESCやファームウェアによって異なります。
対応するESCへBluejayを書き込むことで、Bidirectional DShotなどを利用できる構成があります。
32ビットMCUを使用するESC向けとして開発されたファームウェアです。
テレメトリー、設定可能なPWM Frequencyなど多くの機能に対応した製品があります。BLHeli_Sとはファームウェアも設定環境も異なります。
BLHeli_32は、BLHeli_S用ESCへ書き込むことはできません。
対応するBLHeli_S用ESCで利用できるオープンソースのESCファームウェアです。
Bidirectional DShot、RPMテレメトリー、起動音の変更などに対応します。RPMフィルターを使用したい機体で導入されることがあります。
ESCのMCU、レイアウト、PWM Frequencyなどに合うファームウェアを選ぶ必要があります。書き込み中の電源断にも注意します。
32ビットMCUを搭載した対応ESC向けのオープンソースファームウェアです。
モーター回転方向、Motor Timing、PWM Frequency、テレメトリーなどの設定に対応します。
すべての32ビットESCへ書き込めるわけではありません。対応するMCUとESCターゲットを確認する必要があります。
パソコンとESCが、FCを経由して通信する仕組みです。
パソコンはFCへUSB接続し、FCがモーター信号線を通じてESCとの通信を中継します。そのため、ESCを基板から取り外さずに設定できます。
ESCを読み出せない場合は、バッテリー電源、モーター信号、FCファームウェア、ESCの種類などを確認します。通常、ESCを読み出すにはUSBだけでなくバッテリー接続も必要です。
FCからESCへ、モーター出力をデジタル信号で送る通信方式です。Digital Shotの略です。
従来のアナログに近い信号方式より、値を正確に伝えやすく、キャリブレーションが原則不要です。DShot BeaconやBidirectional DShotなどの関連機能もあります。
使用できる速度はFC、ESC、ジャイロ更新速度などとの組み合わせで選びます。
1秒間に約300キロビットの速度で信号を送るDShot方式です。
処理負荷、信号の安定性、速度のバランスがよく、多くの一般的なFPV機で利用されます。
DShot600より数字が小さくても、モーター最高回転数が半分になるわけではありません。この数字は主にFCとESC間の通信速度を表します。
DShot300より高速に、モーター指示をESCへ送る方式です。
高速通信には、FCの処理能力や信号品質が必要です。配線や回路の状態が悪い場合、高速な方式ほど通信が不安定になる可能性があります。
DShot600へ変更しただけで、体感できるほど飛行性能が向上するとは限りません。
FCからESCへモーター指示を送るだけでなく、ESCからFCへモーター回転数の情報を返す仕組みです。
FCは各モーターの実際の回転数を把握できるため、RPMフィルターを利用できます。専用の追加配線を使わず、モーター信号線を双方向に使用します。
FCとESCファームウェアの両方が対応し、Betaflight上でも正しく設定されている必要があります。
各モーターの回転数をもとに、モーターが発生させる振動成分を狙って減らすフィルターです。
モーター回転数が変わると振動の周波数も変わります。RPMフィルターは、その変化を追いかけながら不要な振動を除去します。
正常に動作させるには、通常Bidirectional DShotと対応ESCファームウェアが必要です。設定後は、エラー率やモーター動作を確認します。
ESCがモーターのコイルへ電流を切り替えるタイミングを調整する設定です。
進角を変えることで、高回転時の安定性、効率、発熱、出力などが変化します。デシンク対策としてTimingを高くすることがありますが、万能な解決策ではありません。
モーターやESCに異常がある場合は、設定変更で隠そうとせず部品を点検します。
モーターのコイルに残る磁気や電流の影響を考慮し、ESCが誤った回転位置を検出しにくくするための設定です。
急激なスロットル変化や負荷の大きな構成で、デシンク対策として利用されることがあります。設定を強くすると安定性が向上する場合がありますが、応答や最大出力へ影響することもあります。
問題がない機体で、理由なく最大設定へ変更する必要はありません。
ESCがモーターへ電力を送る際、MOSFETを1秒間に何回切り替えるかを表す周周波数です。
高いPWM Frequencyは、モーター音を静かにしたり、小型モーターの滑らかさや効率を改善したりする場合があります。一方、構成によってはESC側の発熱や最大出力へ影響します。
低いPWM Frequencyは、出力感やトルクで有利になる場合があります。最適値はモーターサイズ、KV値、バッテリー電圧、プロペラ、ESCによって異なります。
可変PWMに対応するファームウェアでは、モーター回転数などに応じて周波数を変化させる設定もあります。
ArduPilotは、ドローンやラジコン機を制御するためのオープンソースのオートパイロット用ファームウェアです。
マルチコプターだけでなく、固定翼機、VTOL、ヘリコプター、ローバー、ボート、潜水機など、さまざまな機体へ利用できます。マルチコプター用は「ArduCopter」、固定翼用は「ArduPlane」など、機体の種類に応じた構成があります。
BetaflightがFPVレースやフリースタイルなどの手動操縦を得意とするのに対し、ArduPilotはGPSや各種センサーを使った自動飛行、位置保持、飛行経路の管理などを得意とします。
GPSを搭載して適切に設定すると、スティックから手を離したときに現在位置を保つ飛行ができます。
風で機体が流された場合も、元の位置へ戻ろうとします。高度についても、気圧センサーなどを使って一定に保つことができます。
一般的なBetaflight機のアングルモードは機体を水平へ戻すだけで、位置や高度までは自動的に保持しません。この点が大きな違いです。
通信断、バッテリー低下、操縦者のスイッチ操作などをきっかけに、離陸地点などへ自動的に戻る機能を設定できます。
帰還高度、着陸方法、通信断時の動作などを細かく設定できます。
ただし、GPS、方角、高度、ホーム位置などが正しく認識されていることが前提です。「自動帰還があるから必ず戻る」というものではありません。
地図上に通過地点を設定し、その経路に沿って自動飛行させることができます。この通過地点を「ウェイポイント」と呼びます。
指定地点への移動だけでなく、離陸、着陸、待機、旋回、速度変更、カメラ操作などを組み合わせたミッションも作成できます。
測量、点検、観測など、決められた経路を繰り返し飛ばす用途に向いています。
条件を整えることで、指定高度まで自動的に離陸したり、速度を抑えながら自動着陸したりできます。
着陸地点の状態を機体が完全に理解しているわけではないため、人、障害物、傾斜、水面などの確認は操縦者が行う必要があります。
機体が飛べる距離、高度、区域などに制限を設定できます。この機能は一般に「ジオフェンス」と呼ばれます。
設定範囲を超えそうになった場合に、機体を停止、帰還、着陸させるなどの動作を設定できます。
設定ミスやGPS誤差もあり得るため、物理的な柵のように必ず侵入を防げる機能ではありません。
送信機との通信断だけでなく、バッテリー低下、GPS異常、地上局との通信断、センサー異常などに応じた安全動作を設定できます。
異常の種類によって、着陸、帰還、その場で待機などを選択できます。安全機能が多い反面、それぞれの条件と優先順位を理解して設定する必要があります。
GPS、コンパス、気圧センサー、距離センサー、光学フローセンサー、対気速度センサー、テレメトリー無線などを組み合わせられます。
対応FCでは複数のIMUやGPSを使用し、一つのセンサーに異常が起きた場合に別のセンサーを利用する冗長構成も可能です。ArduPilot・対応オートパイロット
対応する距離センサーやLiDARなどを搭載すると、周囲の障害物を検出し、接近を防いだり回避経路を計算したりできる構成があります。
ただし、ArduPilotを書き込むだけで障害物回避ができるわけではありません。対応センサー、機体構成、設定、飛行環境が必要です。
細い枝、透明な物、センサーの死角など、検出できない障害物もあります。
Mission Plannerなどの地上局ソフトを使い、パソコン上で機体の位置、姿勢、バッテリー、GPS、センサー状態などを確認できます。
テレメトリー通信を使用すると、飛行中の状態確認、目的地の指定、ミッションの変更なども可能です。
センサー値、機体姿勢、GPS位置、モーター出力、フェイルセーフの発生状況などを記録できます。
飛行後にログを解析することで、振動、GPS異常、電源問題、操縦ミス、自動制御の動作などを詳しく調べられます。
| 比較項目 | ArduPilot | Betaflight |
|---|---|---|
| 主な用途 | 自動飛行、長距離、測量、点検、実験機 | FPVレース、フリースタイル、Cinewhoop |
| 手動操縦 | 対応するが自動制御寄り | 非常に得意 |
| アクロ飛行 | 可能だが主目的ではない | 特に得意 |
| 位置保持 | GPSなどで本格的に対応 | 基本機能の中心ではない |
| 高度保持 | 対応 | 一般的なFPV構成では行わない |
| 自動航行 | ウェイポイントミッションに対応 | 基本的に非対応 |
| 自動帰還 | 条件や動作を細かく設定可能 | GPS Rescueによる緊急帰還を利用可能 |
| 自動離着陸 | 対応 | 基本的に手動 |
| ジオフェンス | 対応 | 基本機能の中心ではない |
| 障害物回避 | 対応機器を追加して利用可能 | 基本的に非対応 |
| 対応する乗り物 | コプター、固定翼、車両、船など幅広い | 主にマルチコプターと固定翼 |
| 設定の難しさ | 高い | FPV用途では比較的分かりやすい |
| 必要な機器 | GPS・コンパスなどが必要になりやすい | 最小構成ならFCと受信機などで飛行可能 |
| 機体重量 | 構成によって増えやすい | 軽量化しやすい |
| FCへの要求 | 機能数に応じて高くなる | 小型FCにも広く対応 |
| FPVでの操作感 | 安定飛行・支援機能向き | ダイレクトで機敏な操作向き |
ArduPilot最大の強みは、機体自身に飛行経路や安全動作を判断させられることです。
位置保持、自動帰還、ウェイポイント飛行、自動離着陸などを組み合わせられます。毎回同じ経路を飛行する点検や撮影にも向いています。
通信断やバッテリー低下が起きたとき、「モーターを止める」「その場に待機する」「帰還する」「着陸する」などの動作を状況に合わせて設定できます。
BetaflightにもフェイルセーフやGPS Rescueがありますが、ArduPilotの方が自動制御を前提とした選択肢が豊富です。
なお、BetaflightのGPS Rescueは、本格的な自律航法というより、機体を操縦者の近くへ戻すための緊急救済機能として考えるのが適切です。Betaflight・GPS Rescue
多数のGPS、センサー、テレメトリー機器、コンパニオンコンピューターなどを接続できます。
業務機、研究機、大型機など、単純なFPV飛行を超えた機体を構成しやすいファームウェアです。
マルチコプターだけでなく、飛行機、VTOL、ヘリコプター、車両、船などにも利用できます。
同じ考え方や地上局を使いながら、異なる種類の無人機を管理できるのも特徴です。
しかし機能が多い分、設定項目も多くなります。初心者が機能の意味を理解せず変更すると、アームできない、自動帰還しない、意図しない飛行モードへ切り替わるなどの問題が起こります。
Betaflightより高度な知識が必要というより、「確認しなければならない項目が多い」と考えると分かりやすいでしょう。
位置保持や自動航行には、GPS、コンパス速度センサー、気圧センサーなどが正しく動作する必要があります。
コンパスの向き、磁気干渉、振動、GPSの搭載位置などに問題があると、自動制御も誤った情報をもとに動作してしまいます。
GPS、コンパス、テレメトリー無線、距離センサーなどを追加すると、配線、重量、消費電力、故障箇所が増えます。
Tiny Whoopや軽量レース機のように、最小限の部品で軽く仕上げたい用途には適さないことがあります。
高速な手動操縦、アクロ飛行、細かな操作感の調整では、Betaflightの方が情報やPresetも多く、一般的なFPV機へ導入しやすい傾向があります。
ArduPilotでもアクロ飛行はできますが、それだけが目的なら、多数の自動飛行機能を持つArduPilotを選ぶ利点は小さくなります。
すべてのFPV用FCで、ArduPilotの全機能を使用できるわけではありません。
特にフラッシュメモリー容量の限られたF4系FCでは、一部機能がファームウェアに含まれない場合があります。UART数、メモリー容量、センサー、SDカード、対応ターゲットなどの確認が必要です。
位置保持、自動帰還、障害物回避などの名称から、機体が何でも安全に判断してくれるように感じることがあります。
実際には、GPS誤差、コンパス異常、設定ミス、地形、電波状況、バッテリー残量などによって失敗する可能性があります。自動機能は操縦者の安全確認を不要にするものではありません。
次のような用途にはBetaflightが向いています。
次のような用途にはArduPilotが向いています。
