ドローンフライトコントローラー:原理と動作

ドローンフライトコントローラー:原理と動作

フライトコントローラー(FC)は、FPVドローンの頭脳であり、制御入力を飛行に必要な正確なモーターコマンドに変換します。さまざまなセンサーからのデータを処理し、複雑なアルゴリズムを実行し、ドローンを安定させて応答性を維持するために1秒間に何百もの調整を行います。この包括的なガイドでは、フライトコントローラーのテクノロジー、ファームウェアのオプション、選択基準、セットアップ手順、および高度な機能を探求し、この重要なコンポーネントを理解および最適化するのに役立ちます。


フライトコントローラーの紹介

FPVドローンの製作と飛行を何年も続けてきた私は、フライトコントローラーほどフライト体験に影響を与えるコンポーネントはないと実感しています。ドローンをかろうじて安定させることができた原始的なKKボードを使った最初のビルドを今でも覚えています。それから今日に至るまで、最新のフライトコントローラーのH7プロセッサは、ほんの数年前には空想科学のように思えた複雑な計算を実行しています。

KKボードを使用した原始的なドローンビルド
KKボードを使用した原始的なドローンビルド。出典:https://circuitdigest.com/electronic-circuits/build-your-own-drone-using-kk215-flight-controller-from-selecting-right-component-to-first-flight-part1

フライトコントローラーは、マイクロプロセッサ、さまざまなセンサー、入出力接続を含む専用の回路基板です。ドローンの中央処理装置として機能し、いくつかの重要な機能を実行します。

安定化:水平飛行を維持し、外力を補正する
制御入力処理:スティックの動きをモーターコマンドに変換する
センサー統合:ジャイロスコープ、加速度計などからデータを収集して処理する
機能管理:アクロ、アングル、GPSホールドなどのモードを処理する
周辺機器との通信:受信機、ESC、カメラ、その他のコンポーネントとのインターフェース

フライトコントローラーの進化

私は趣味を始めた2019年以降でさえ、フライトコントローラーの劇的な進化を目の当たりにしてきました。

それは単純な安定化をかろうじて処理できる基本的な8ビットプロセッサから始まりました。2014年頃の32ビットコントローラーへの飛躍は革命的でした。突然、クアッドはより正確な制御と高度な機能を実行できるようになりました。その進歩は目覚ましいものでした。

初期のFC(2010-2013):限られた機能での基本的な安定化。MultiWiiボードを使ったビルドでは、水平飛行を維持するだけでも常に注意が必要でした。

MultiWiiベースのビルドの例
MultiWiiベースのビルドの例。出典:http://sgeorgiev.com/blog/2014/02/25/quadcopter-with-multiwii-running-on-arduino-uno

32ビット革命(2014-2016):より高速な処理とより良いアルゴリズム。Naze32はゲームチェンジャーでした。突然、クアッドは全く別の機械のように感じられるようになりました。

Naze32コントローラー
Naze32コントローラー

現代(2017年〜現在):強力なF4/F7プロセッサと統合コンポーネント。私が発見したのは、これらの最新のフライトコントローラーは、複雑なフィルタリングと高いループレートを処理でき、アグレッシブなフリースタイルフライングでさえバターのようにスムーズに感じられるということです。

Kakute F4 - 私の最初のフライトコントローラー
Kakute F4 - 私の最初のフライトコントローラー

次世代(2023年以降):機械学習機能とセンサーフュージョンの強化を備えたH7プロセッサ。これらは最先端のコントローラーであり、飛行性能の違いは微妙ですが、特に厳しい条件下では顕著です。

Kakute H7 - 私の現在のトップパフォーマー
Kakute H7 - 私の現在のトップパフォーマー

この進歩により、ますます洗練された機能とパフォーマンスを備えた、より小型で高性能なフライトコントローラーが生まれました。フライトコントローラーがクレジットカードほどの大きさだった時代を覚えていますが、今ではそれよりはるかに多くのことをしながら、切手よりも小さいことがよくあります。

フライトコントローラーの基本コンポーネント

最新のフライトコントローラーは、フライト体験を生み出すために連携して機能するいくつかの重要なコンポーネントを統合しています。何年にもわたるビルドとトラブルシューティングで学んだこれらのコンポーネントについて説明しましょう。

マイクロプロセッサ

中央演算装置は通常STM32プロセッサであり、そのタイプがパフォーマンスに大きな影響を与えます。私はF1からH7までのプロセッサを飛ばしてきましたが、以下のようなことがわかりました。

F1プロセッサ:現在は廃止された古い32ビットチップ。私は数回楽しみのためにこれらを飛ばしましたが、仕事はこなせるものの、その制限にはいらだちを感じました。

F3プロセッサ(72MHz): 現在では大部分が時代遅れですが、F1からの堅実なステップアップでした。私はF3ベースの機体を1つ飛ばしましたが、実際にかなり満足のいくものでした。

F4プロセッサ(168-216MHz): 現在でも一般的で、ほとんどのフライングスタイルに十分な性能を発揮します。私は教育用の機体でF4ボードを使用していますが、それは性能とコストのバランスが優れているからです。

F7プロセッサ(216-400MHz): 現在の標準で、要求の厳しい状況で目に見えるほどの処理能力の向上があります。メインのフリースタイルクアッドをF7に切り替えたとき、複雑なフィルタリングとより高いループレートの処理が改善されたことにすぐに気づきました。

H7プロセッサ(400-480MHz): ハイエンドオプションとして登場しています。私はレーシング機体で1つをテストしていますが、違いは微妙ですが、将来の機能のヘッドルームは大きいです。

プロセッサはフライトコントローラの計算能力を決定し、複雑なアルゴリズムを実行し、高いループタイムを維持する能力に影響します。私はプロセッサがすべてではないことを学びましたが、それはフライトコントローラが達成できる上限を設定します。

センサー

フライトコントローラのセンサーは、飛行の安定性と機能の実装に不可欠です。私はセンサーの問題でドローンを何度も墜落させたことがあるので、この点には細心の注意を払うようにしています。

ジャイロスコープ: 3軸(ピッチ、ロール、ヨー)周りの回転速度を測定します。これは最も重要なセンサーであり、ジャイロの品質が飛行性能に大きな影響を与えることがわかりました。ノイズの多いジャイロは、チューニングではどうにもならないぎくしゃくした予測不可能な動作につながります。

加速度計: 直線加速度を測定し、アングルモードに不可欠です。最近ではアングルモードを使うことはほとんどありませんが、友人に私のドローンを試してもらうときは、よくキャリブレーションされた加速度計に感謝しています。

気圧計: 高度推定のために大気圧を測定します。私の経験では、信頼性の点でヒットアンドミスがあります。プロップウォッシュや天候の変化の影響を受けます。本格的な高度ホールドにはGPSを好んで使います。

磁力計(コンパス): 磁北に対する方位を決定します。私の経験では、これらは電力システムやモーターからの干渉を非常に受けやすいです。私は常に電源ワイヤーからできるだけ遠くに取り付けるようにしています。

GPS: ナビゲーション機能のための位置データを提供します。私は苦い経験から、すべてのGPSモジュールが同じように作られているわけではないことを学びました。衛星受信性能の良いモジュールにもう少しお金をかけることで、長距離飛行でドローンを失うことがなくなりました。参照: ドローンのGNSS技術

入出力インターフェース

周辺機器やその他のコンポーネントの接続は、フライトコントローラを多用途にするものです。私はミニマルなレース用クアッドから複雑な長距離機まで、あらゆるものを作ってきましたが、利用可能なインターフェースがすべての違いを生み出します。

UARTポート: 受信機、GPS、テレメトリーなどとのシリアル通信を提供します。私の経験では、少なくとも4〜5個のUARTがあれば、ほとんどの機体に必要な柔軟性が得られます。UARTが不足すると不便で、しばしば妥協が必要になります。

I2Cバス: 特定の周辺機器やセンサーとの通信を可能にします。私はI2Cについて良い経験と悪い経験の両方があります。便利ですが、適切に実装されていないとノイズの問題が発生しやすいです。

SPIバス: ジャイロやその他のデバイスとの高速通信を提供します。これはパフォーマンスに不可欠であり、SPIバスが適切に実装されたフライトコントローラは、ジャイロ信号がクリーンになる傾向があることに気づきました。

モーター出力: モーター制御のためにESCに接続します。DShotプロトコルへの移行は、私の経験ではゲームチェンジャーでした。デジタルの精度により、以前は悩まされていたキャリブレーションの頭痛の種の多くが解消されました。参照: FPVドローンのモーターFPVドローンのESC

USBポート: 設定とファームウェアの更新に使用します。この接続の品質を確認することを学びました。もろいUSBポートは、フライトコントローラで最初に壊れるものであることが多いです。

電源管理

電源回路はクリーンで安定した電力を供給しますが、その重要性を過小評価しないことを学びました。FPVの旅の初期に、私は不可解なフライトの問題を経験しましたが、最終的には電源の問題が原因であることがわかりました。

電圧レギュレータ: バッテリー電圧を5Vと3.3Vに変換して電子機器に供給します。品質の良いレギュレータは、特にハイパワーな機体では、全体的なシステムの信頼性に大きな違いをもたらすことがわかりました。

フィルタリングコンデンサ: 電力供給を滑らかにし、ノイズを低減します。私は常に追加のコンデンサを機体に追加します。センサーの読み取りに影響を与える可能性のある電気ノイズに対する安価な保険です。

保護回路: 電圧スパイクや逆極性による損傷を防ぎます。バッテリーを逆に接続してフライトコントローラを焼いたことが1度ならずあるので、私は今では堅牢な保護機能を備えたボードを探すようにしています。

ドローンへの電力供給に関するより詳細な情報については、以下を参照してください。
ドローンバッテリーの種類と化学の概要


フライトコントローラのハードウェア

長年にわたり、私はさまざまな機体で数十種類のフライトコントローラを使用してきましたが、さまざまな用途に最適なものについて強い意見を持つようになりました。

フライトコントローラの分類

プロセッサタイプ別

プロセッサはフライトコントローラを分類する最も一般的な方法であり、ニーズに合ったプロセッサを選ぶことが重要だと私は感じています。

F4フライトコントローラ(168-216MHz)は、パフォーマンスとコストのバランスが良いです。私はほとんどの機体でこれらを使用しています。最も要求の厳しい用途以外では十分だからです。Betaflight F4、Matek F405、iFlight SucceX-E F4はいずれも私にとって役立ちました。

F7フライトコントローラ(216-400MHz)は、より多くのUARTと機能を提供します。私は複数の周辺機器を接続する必要がある場合や、可能な限り最高のフィルタリング性能を求める場合に、これらを使用します。Matek F722、SpeedyBee F7、iFlight SucceX-E F7が私のお気に入りの一部です。

H7フライトコントローラ(400-480MHz)は、最大の処理能力を備えた最先端を表しています。私はSpeedyBee H7とMatek H743をテストしていますが、F7からのパフォーマンスの向上は微妙ですが、高度な機能に対して間違いなく将来性があります。

フォームファクター別

フライトコントローラには標準化された取り付けパターンがあり、適切なサイズを選ぶことが機体にとって重要です。

スタンダードマウント(30.5×30.5mm)は、5インチ以上の機体で最も一般的なサイズです。私はほとんどのフリースタイルと長距離クアッドでこれらを使用しています。最も多くの機能と接続オプションを提供するからです。

20×20mmマウントは、3インチ以下の機体で一般的です。私の経験では、これらの小さなボードは機能面で大きく進歩してきましたが、通常、UARTと接続オプションは少なくなります。

16×16mmマウントは、マイクロビルドとタイニーフープで使用されます。これらは非常にコンパクトで、メーカーがこのような小さなスペースにどれだけの機能を詰め込むことができるのかに、私はいつも驚かされます。

AIO (All-In-One) は、FCを ESC などの他のコンポーネントと組み合わせたものです。私は、特定のビルドでこれらを高く評価するようになりました。これらは配線を簡素化し、重量を減らすことができますが、単一障害点でもあります。

機能統合による分類

最新のフライトコントローラーは、多くの場合、追加のコンポーネントを統合しており、適切な統合レベルを選択することで、ビルドがはるかに容易になることがわかりました。

FC のみのボードは、フライトコントローラーの機能のみを提供します。私は、コンポーネントの選択に最大限の柔軟性を求めるビルドでは、これらを今でも使用しています。

FC+PDB の組み合わせには、電力分配が含まれます。これらはスペースを節約し、配線を簡素化します。

FC+ESC (4-in-1) スタックは、FC と ESC を組み合わせたものです。これらは、ビルド時間を大幅に短縮し、よりクリーンで信頼性の高いセットアップを実現します。

FC+ESC+VTX のオールインワンソリューションには、ビデオトランスミッターが含まれています。私はこれらについて良くも悪くも経験してきました。便利ですが、高温になる可能性があり、1つのコンポーネントが故障すると、すべてを交換することになります。

FC+ESC+VTX+RX の完全なフライトスタックには、レシーバーが含まれています。これらは最大限の統合性を提供し、当初は懐疑的でしたが、最新の実装の一部は驚くほどうまく機能します。

考慮すべき重要なハードウェア機能

フライトコントローラーを選択する際は、飛行体験を左右するいくつかのハードウェア機能に注意を払うことが重要だと学びました。

UART の数と利用可能性

UART は、周辺機器を接続するために使用されるシリアルポートであり、十分な数を確保することが柔軟性のために不可欠であることがわかりました。

私は、3つの UART が最低限必要だと考えています (受信機、テレメトリー、および予備の1つ)。3つの UART だけでクアッドを構築したことがありますが、常に制限を感じます。

4〜5つの UART は、ほとんどのビルドに適した設定を提供します。これにより、受信機、テレメトリー、GPS、およびおそらくカメラ制御または LED 制御に十分な接続が得られます。

6つ以上の UART は、複雑な設定に最大限の柔軟性を提供します。私の長距離ビルドでは、通常、さまざまな周辺機器とバックアップシステムにこの数の接続を使用します。

すべての UART が同じように作成されているわけではないことを、私は苦い経験から学びました。一部は他の機能と共有されていたり、制限があったりする可能性があります。ドキュメントは常に注意深く確認してください。

ジャイロのタイプと実装

ジャイロスコープは飛行性能にとって重要であり、私は何年にもわたるテストに基づいて強い好みを持つようになりました。

MPU6000 シリーズのジャイロは、ノイズフロアが低く信頼性があります。私はパフォーマンスのすべてが重要なレーシングビルドにこれらを好んで使用します。最新のボードでは入手が難しくなっていますが、利用可能な場合は今でも私の第一選択です。

ICM20602/ICM20689 ジャイロは優れたパフォーマンスを提供し、最新の FC で一般的に使用されています。私はこれらがほとんどの飛行スタイルに完全に適していることを発見しましたが、MPU6000 ほどノイズに強くはありません。

BMI270 は、優れたパフォーマンスを備えた新しいセンサーです。最近のビルドでそのノイズ処理に感銘を受けており、新しい標準になりつつあるようです。

取り付け方法も重要です。ソフトマウントとハードマウントのジャイロは、振動の処理方法が異なります。高性能クアッドでは振動が避けられないため、私はジャイロがよく分離されたフライトコントローラーを好んで使用します。

電流センサーの定格

電流検知を統合したビルドでは、正確なバッテリー管理のために適切な定格を選択することが重要です。

レーシングドローンでは、通常、30〜60A の定格が必要です。私は、これらの軽量ビルドでは、定格を高くしすぎると解像度と精度が低下することがわかりました。

フリースタイルドローンは、50〜100A の定格で最適に機能します。私のフリースタイルビルドは、アグレッシブな操作中に大電流を引き出す可能性があるため、ヘッドルームを確保することが重要です。

長距離および映画的なセットアップでは、通常、40〜80A の定格が必要です。これらのビルドは、より一貫した電力消費傾向があるため、極端な範囲よりも精度が重要です。

解像度 (ビット深度) は、より正確な読み取り値を提供します。解像度の高い電流センサーは、バッテリー警告とテレメトリーの精度に顕著な違いをもたらすことがわかりました。

ブラックボックス記録

ロギングとチューニングのために、ブラックボックス機能は不可欠であり、ビルドに応じてさまざまなアプローチを使用してきました。

オンボードフラッシュ (通常は8〜16MB) は便利ですが、容量が制限されています。私はこれをクイックチューニングセッションに使用しますが、高いロギングレートではすぐにいっぱいになります。

SD カードスロットは、はるかに大きなストレージ容量を提供しますが、複雑さが増します。本格的なチューニング作業では、SD カードをサポートするフライトコントローラーを好んで使用します。高レートで全飛行をログに記録する機能は非常に貴重です。

一部の FC にはストレージがなく、ブラックボックスデータには外部ロガーが必要です。外部ロガーは重量と複雑さを増すため、可能な限り避けるようにしています。

その他のハードウェア機能

長年の経験から、飛行体験を向上させるいくつかの機能の価値がわかってきました。

FPV フィードの内蔵 OSD (オンスクリーンディスプレイ) は、私が現在不可欠だと考えているものです。飛行中にバッテリー電圧、飛行時間、その他の重要な情報を見ることができることで、多くのドローンを墜落やバッテリーの損傷から救ってきました。

高度保持用の気圧計は、特定の状況で役立ちます。私はこの機能をあまり使用しませんが、映画的な映像を撮影する際には、信頼できる高度保持が貴重です。

LED ストリップ用の LED 制御出力は、夜間飛行とドローンの識別を容易にします。私はビルドにアドレス指定可能な LED を搭載することに慣れてきました。それらは単なる見せかけのためだけではなく、方向と状態表示に本当に役立ちます。

墜落したドローンを見つけるためのブザー出力は、何時間もの捜索時間を節約してくれました。私は今ではブザーなしでクアッドを組み立てることはありません。背の高い草木や木々の中で暗いドローンを見失うのは簡単すぎるからです。

フライトコントローラーの解剖図
最新のフライトコントローラーの主要コンポーネントと接続を示す図

飛行中にカメラ設定を調整するためのカメラ制御は、私が高く評価するようになった贅沢な機能です。着陸せずに露出やその他の設定を調整できることは、変化する光の条件に特に役立ちます。


フライトコントローラーのファームウェア

ファームウェアは、フライトコントローラーのハードウェア上で動作するソフトウェアであり、その機能と動作を決定します。私は利用可能なオプションのほとんどを試してみましたが、それぞれに長所と短所があります。

主要なファームウェアオプション

いくつかのファームウェアオプションが利用可能であり、私はそれぞれのユニークな特性を理解するために各オプションに時間を費やしてきました。

Betaflight

Betaflight は、FPV ドローン用の最も人気のあるファームウェアであり、私のほとんどのビルドで使用しているものです。レーシングとフリースタイルのパフォーマンスに重点を置き、優れた飛行特性とアクティブな開発が行われています。

Betaflightの強みには、優れたフライトパフォーマンス、活発な開発コミュニティ、そして大規模なユーザーベースがあります。Betaflightで問題が発生した場合、通常はすでに解決した人を見つけることができます。

弱点としては、自律機能が限られていることと、学習曲線が急であることが挙げられます。私はBetaflightコンフィギュレーターで設定を調整するのに無数の時間を費やしてきましたが、初心者にとっては圧倒されるかもしれません。

Betaflight Configurator
Betaflight Configurator

Betaflightは、レース、フリースタイル、一般的なFPVフライトに最適です。アクロバット飛行やレースに主に興味がある場合、それを上回るのは難しいでしょう。

INAV

INAVはナビゲーションと自律機能に重点を置いており、私は長距離とマッピングのビルドに使用しています。そのGPSモード、リターントゥホーム、ウェイポイント機能は優れています。

INAVの強みは、包括的なナビゲーション機能と信頼性の高い自律飛行です。ビデオ信号を失ったときに、INAVがキロメートル先からドローンを戻してくれたことがあります。

弱点としては、純粋なパフォーマンスフライトに最適化されていないことが挙げられます。INAVはアクロ性能を向上させましたが、レースやフリースタイルではまだBetaflightに及びません。

INAV Configurator
INAV Configurator

INAVは、長距離飛行、マッピング、自律ミッションに最適です。アクロバットよりも探検に興味がある場合は、INAVを検討する価値があります。

KISS

KISSはシンプルなアプローチでクリーンなコードを重視しています。私はいくつかのビルドでKISSを使用しましたが、そのシンプルさは新鮮です。

KISSの強みには、簡単なセットアップと初期状態での良好なフライト特性が含まれます。KISS搭載のクアッドを上手く飛ばすのに、ほとんど調整が必要ないことに感銘を受けました。

弱点としては、クローズドソースであることとハードウェアオプションが限られていることが挙げられます。エコシステムが小さいため、問題が発生した場合のリソースが少なくなります。

KISS GUI
KISS GUI. 出典: https://noirfpv.com/how-to-use-flyduino-kiss-fc-gui-ja/

KISSは、シンプルさと良好なパフォーマンスを求めるパイロットに最適です。設定よりも飛行に多くの時間を費やしたい場合は、KISSを検討する価値があります。

Emuflight

EmuflightはBetaflightのフォークで、フライトコントロールへの代替アプローチを取っています。私はいくつかのビルド、特にシネマティックフライトで実験しました。

Emuflightの強みには、ユニークなフライトフィールと特定のフライトスタイルに適した良好なパフォーマンスが含まれます。スムーズで流れるようなフリースタイルに特に適していると感じました。

弱点としては、コミュニティが小さく、更新頻度が低いことが挙げられます。問題が発生した場合、Betaflightと比較して利用可能なリソースが少なくなります。

Emuflight Configurator
Emuflight Configurator

Emuflightは、特定のフライト特性、特に絶対的な応答性よりもスムーズさを優先するパイロットに最適です。

Ardupilot/PX4

ArdupilotとPX4は、プロフェッショナルグレードのオープンソースオートパイロットシステムです。私はこれらをより本格的なマッピングと調査作業に使用しています。

これらのシステムの強みには、包括的なミッション計画とプロフェッショナルな機能が含まれます。自律機能のレベルは、他のファームウェアオプションで利用可能なものをはるかに超えています。

弱点としては、セットアップが複雑で、俊敏性に最適化されていないことが挙げられます。これらは、フリースタイルやレースに選ぶシステムではありません。

QGroundControlは、Ardupilotベースのビルドの設定によく使用されます
QGroundControlは、Ardupilotベースのビルドの設定によく使用されます

ArdupilotとPX4は、マッピング、調査作業、信頼性と自律機能が俊敏性よりも重要なプロフェッショナルな用途に最適です。

ファームウェア機能の比較

これらの異なるファームウェアオプションを使用した経験から、私はさまざまな分野でのそれらの相対的な強みについての感覚を得ました:

特徴 Betaflight INAV KISS Emuflight Ardupilot
アクロモード ★★★★★ ★★★★☆ ★★★★★ ★★★★★ ★★★☆☆
GPSモード ★★☆☆☆ ★★★★★ ★★☆☆☆ ★★☆☆☆ ★★★★★
OSDオプション ★★★★☆ ★★★★☆ ★★★☆☆ ★★★★☆ ★★★☆☆
セットアップの容易さ ★★★☆☆ ★★☆☆☆ ★★★★★ ★★★☆☆ ★☆☆☆☆
コミュニティサポート ★★★★★ ★★★★☆ ★★★☆☆ ★★★☆☆ ★★★★☆
アップデート頻度 ★★★★★ ★★★★☆ ★★☆☆☆ ★★★☆☆ ★★★★☆
ハードウェアオプション ★★★★★ ★★★★☆ ★★☆☆☆ ★★★★☆ ★★★☆☆

適切なフライトコントローラーの選択

適切なフライトコントローラーの選択は、特定のニーズとビルド要件に依存します。数十種類のドローンを製作した経験から、私はさまざまな用途に合わせたガイドラインを作成しました。

レーシングドローン向け

レーシングドローンを製作する際は、パフォーマンス、信頼性、シンプルさを優先します。1グラムごとが重要であり、不必要な機能は重量を増やすだけです。

高いループレートを実現するために、F4またはF7プロセッサーをお勧めします。F7はより高い処理能力を持っていますが、多くのトップレーサーは、軽量でレーシングの要求を完全に処理できるF4ボードを使用しています。

ジャイロには、信頼性の高いMPU6000シリーズまたはICM20602を好んで使用します。高速で小さな乱れが操縦性に影響を与えるレーシングでは、クリーンなジャイロ信号が非常に重要です。

フォームファクターは、コンパクトなビルドには20×20mm、標準的なビルドには30.5×30.5mmが適しています。私は、重量とスペースを節約するために、ほとんどのレースビルドを20×20mmに移行しました。

統合面では、FC+ESCスタックにより、配線を最小限に抑えたクリーンなビルドが可能です。これにより、重量と、レーシングのクラッシュで一般的な配線の故障の可能性が減ります。

ファームウェアには、レーシング用に最適化されたBetaflightを排他的に使用しています。デフォルト設定は大幅に改善されましたが、私は自分の飛行スタイルに合わせて微調整を行います。

レーシングで成功したフライトコントローラーの例としては、iFlight SucceX-E F4/F7、T-Motor F7、SpeedyBee F4/F7などがあります。

フリースタイルドローン向け

フリースタイルドローンでは、信頼性、包括的な機能セット、パフォーマンスを優先します。これらのビルドは他のどのビルドよりも多くの虐待を受けるため、耐久性が鍵となります。

より良いフィルタリングと機能のために、F7プロセッサーをお勧めします。フリースタイルビルドで一般的な高い重量対出力比に対応するには、余分な処理能力が役立ちます。

ジャイロは、クリーンな信号を得るためによく絶縁されている必要があります。フリースタイルでは、多くの振動を生み出す高出力の機動が行われるため、良好な絶縁は大きな違いをもたらします。

バッテリー管理のために、正確な電流センサーが重要です。フリースタイル飛行では、電力需要が急激に変化する可能性があるため、バッテリーの状態を把握することが重要です。

オンボードフラッシュまたはSDカードによるブラックボックス機能は、チューニングに不可欠です。適切なチューニングがフリースタイルのパフォーマンスに大きな違いをもたらすことがわかっており、ブラックボックスデータが良好なチューニングの鍵となります。

フル機能のOSDは、重要な飛行情報を提供します。私は、フリースタイルのトリックを楽しんでいると忘れがちな着陸のタイミングを知るためにOSDに頼っています。

フリースタイル向けに良い経験をしたフライトコントローラーには、Matek F722-SE、Holybro Kakute F7、Diatone Mamba F722などがあります。

長距離/シネマティックドローン向け

長距離およびシネマティックな用途では、信頼性、GPS機能、電力効率を優先します。これらのビルドは、自宅から離れて飛行する際に信頼できる必要があります。

GPSやその他の周辺機器を処理するために、F7プロセッサーをお勧めします。追加のUARTと処理能力は、長距離ビルドで一般的に見られる複数のシステムにとって価値があります。

気圧計は、高度保持および関連機能に役立ちます。遠くを飛行する際、信頼できる高度情報はナビゲーションとバッテリー管理に重要です。

GPS、テレメトリー、カメラ制御などには、複数のUARTが必要です。私の長距離ビルドでは、通常、さまざまなシステムに5〜6個のUARTを使用します。

ナビゲーション機能には、INAVファームウェアのサポートが重要です。Betaflightには基本的なGPS機能がありますが、本格的なナビゲーションタスクにはINAVの方がはるかに優れています。

長時間の飛行には、クリーンな電源フィルタリングが不可欠です。長距離飛行はすべて効率性が重要であり、クリーンな電力は飛行時間を最大化するのに役立ちます。

これらの用途で私にとって役立ったフライトコントローラーには、Matek F765-WING、Holybro Kakute H7、iFlight Beast H7などがあります。

マイクロビルド向け

マイクロドローンを製作する際は、サイズ、重量、統合を優先します。すべてのコンポーネントは、可能な限り小さく軽量である必要があります。

コンパクトなフレームに収まるように、フォームファクターは16×16mmまたは20×20mmである必要があります。これらの小さなフライトコントローラーがどれほど高性能になったかに驚かされます。

ESCを統合したAIO設計は、ビルドを簡素化し、スペースを節約します。最小のビルドでは、個別のコンポーネントは実用的ではありません。

良好な飛行性能のために、超軽量のコンポーネントが不可欠です。マイクロビルドの重いフライトコントローラーは、操縦性に目に見えて影響します。

必要不可欠な機能のみを備えたシンプルな設計は、重量を最小限に抑えるのに役立ちます。気圧計や追加のUARTなどの機能は、多くの場合、重量を節約するために省略されます。

マイクロビルドで私が成功裏に使用したフライトコントローラーには、HGLRC Zeus F4/F7 AIO、BetaFPV F4 AIO、NamelessRC F4/F7 AIOなどがあります。

初心者向け

初心者には、使いやすさ、耐久性、価値を優先することをお勧めします。最初のビルドはクラッシュする可能性が高いため、回復力が重要です。

学習には、F4プロセッサーで十分です。F7はより多くの機能を提供しますが、F4ボードは、初心者に必要なすべてを低コストで提供します。

コンフォーマルコーティングや堅牢な設計などの保護機能は、クラッシュから生き残るのに役立ちます。私は、初心者にフライトコントローラーに追加のコンフォーマルコーティングを施すことを常にお勧めしています。これは、偶発的なショートに対する安価な保険です。

優れたドキュメントとサポートリソースは、学習曲線を容易にします。一部のメーカーは他のメーカーよりもはるかに優れたドキュメントを提供しており、学習時に大きな違いをもたらします。

適切なデフォルト設定を備えたBetaflightファームウェアにより、広範なチューニングなしで成功を収めることができます。デフォルト設定は近年劇的に改善され、初心者が良好な飛行性能を達成するのがはるかに容易になりました。

手頃な価格のオプションは、過剰な機能なしで優れた価値を提供します。学習中に使用しない機能に余分なお金を費やす必要はありません。

初心者にお勧めするフライトコントローラーには、iFlight SucceX-E F4、Matek F405-STD、JHEMCU GHF411などがあります。


フライトコントローラーの取り付けとセットアップ

適切な取り付けと設定は、最適なパフォーマンスのために重要です。私はこの分野で可能なすべての間違いを犯してきたので、何が効果的で何が効果的でないかを学びました。

ハードウェアの取り付け

取り付けに関する考慮事項

フライトコントローラーの向きは非常に重要です。矢印は前方を指している必要があります。または、ソフトウェアで別の向きを設定することができます。私は、これが犯しやすい間違いであるため、すべての初フライトの前にこれを二重にチェックすることを学びました。

グロメットやフォームテープを使用したソフトマウントによる振動絶縁は、飛行性能に大きな違いをもたらします。私は今、すべてのビルドでソフトマウントを使用しています。ジャイロデータの改善は著しいものがあります。

振動絶縁に関するより詳細な情報については、以下をご覧ください。
ドローンの振動減衰

設置場所は重心の中心で、クラッシュから保護されている必要があります。私は、バランスを取るためと最大限の保護を提供するために、フレームの中心にフライトコントローラーを配置するようにしています。

設定とアップデートのためには、USBポートへのアクセスが重要です。USBを接続するために部分的に分解しなければならなかったクアッドを作ったことがありますが、これは繰り返さないミスです。

電子機器を冷却するための適切な空気の流れは、過熱の問題を防ぎます。フライトコントローラーは、特にESCやビデオトランスミッターに近接して詰め込まれている場合、かなり温かくなることがあります。

配線のベストプラクティス

敏感なコンポーネントから離れた配線の清潔な配線は、干渉を減らします。私は、信号線を電源線から離しておくことで、パフォーマンスに顕著な違いが出ることに気づきました。

適切なはんだ付けや高品質のコネクタによる安全な接続は、故障を防ぎます。ここでショートカットをするには、接続不良が原因でクラッシュしすぎました。

ひずみ緩和は、はんだ接合部やコネクタの張力を防ぎます。小さなジップタイやホットグルーの塊があれば、イライラするような断続的な問題から救われるかもしれません。

信号線を電源線から分離することで、ノイズを低減します。私は常に、スタックの反対側の電源線から信号線を配線するようにしています。

フライトコントローラーの適切な配線と接続レイアウトの例
フライトコントローラーの適切な配線と接続レイアウトの例

配線の長さを最小限に抑えることで、ノイズと重量を減らすことができます。私は、必要な長さにすべての配線を切断します。余分なループやたるみはありません。

配線に関するより詳細な情報は、以下をご覧ください。
ドローン配線ガイド

ソフトウェア設定

初期セットアッププロセス

セットアッププロセスは、私が多くのビルドで洗練してきた論理的な手順に従います。

  1. コンフィギュレーターソフトウェアのインストール:互換性の問題を避けるために、異なるファームウェアブランチ用に別々のバージョンを保持しています。
  2. FCの接続:データ転送をサポートする高品質のUSBケーブルを使用します。私は多くの不可解な接続問題を、安価または損傷したUSBケーブルに追跡しました。
  3. ファームウェアのフラッシュ:最新の安定版にアップデートします。私は通常、依存しているビルドでは最先端のリリースを避けます。安定性が最新の機能よりも重要です。
  4. 基本設定
    • 正しいボードの向きを設定
    • 周辺機器用のUARTを設定
    • 受信機プロトコルを設定
    • バッテリー監視を設定
  5. 受信機セットアップ
    • 受信機を送信機にバインド
    • チャンネルマッピングを確認
    • フェイルセーフ動作を設定(私は常に最初のフライト前にこれをテストします。これまで何度もフライアウェイから救われました)
  6. モーター設定
    • モーターの回転方向を確認(常にプロペラを外した状態で!)
    • ESCプロトコルを設定(ほとんどのビルドではDShot600をお勧めします)
    • 異常なノイズや振動がないか確認
  7. フライトモード設定
    • アームスイッチを設定
    • 追加のフライトモードを設定
    • 混乱を避けるために、すべてのモデルで一貫したスイッチレイアウトを使用しています
  8. OSD設定
    • オンスクリーンディスプレイ要素をカスタマイズ
    • 視認性のために要素を配置
    • 警告とアラームを設定
  9. PIDチューニング
    • デフォルトまたはプリセットから開始
    • 初期フライト後、必要に応じて微調整

一般的なセットアップの問題と解決策

長年にわたり、私は数え切れないほどのセットアップの問題に遭遇し、解決してきました。ここでは、最も一般的な問題とその解決策をいくつか紹介します。

コンフィギュレーターに接続できない

フライトコントローラーがコンフィギュレーターに接続できない場合、非常にイライラすることがあります。私はいくつかの潜在的な原因を発見しました。

ドライバーの不正確/欠落:多くの場合、原因となります。特にWindowsでは気難しいことがあるので、私は異なるフライトコントローラー用のドライバーのコレクションを保持するようにしています。

USBポート/ケーブルの損傷:不可解な接続の問題を引き起こします。私は現在、高品質のUSBケーブルを使用し、トラブルシューティング用の専用の「既知の良好な」ケーブルを持っています。

ブートローダーモードの問題:フライトコントローラーがブートローダーモードで立ち往生することがあります。私は、ブートピンをショートさせ、電源を入れ直して、正しいモードに強制的に移行するルーチンを開発しました。

COMポートの不正確:単純なミスですが、犯しやすいミスです。私は常にデバイスマネージャーをチェックして、フライトコントローラーが使用しているポートを確認します。

モーターの回転方向が間違っている

モーターが間違った方向に回転するのは、単純な解決策がある一般的な問題です。

モーター配線の交換:任意の2本のモーター配線を交換すると、方向が逆になります。私は何度もこれを行ってきましたが、再はんだ付けが必要です。

BLHeli設定:BLHeli ESCを使用している場合は、BLHeliコンフィギュレーターを使用してモーターの回転方向を逆にする方が簡単です。これは、ハードウェアの変更を必要としないので、私の好みの方法です。

フライト前の検証:最初のフライト前に、必ずコンフィギュレーターでモーターの順序と方向を確認してください。この手順を省略したために、1機以上のクアッドをクラッシュさせたことがあります。

不安定な飛行挙動

クアッドが正しく飛行しない場合、いくつかの潜在的な原因があります。

FCの向きが正しくない:よくある原因です。私は一度、奇妙な動作のトラブルシューティングに何時間も費やしたことがありますが、フライトコントローラーがソフトウェアで設定されているものから90度回転していることに気づきました。

振動の問題:あらゆる種類の奇妙な動作の原因となります。適切な振動絶縁が飛行性能に劇的な違いをもたらすのを見て以来、私は適切な振動絶縁の強力な提唱者になりました。

PIDチューニングの問題:多くの場合、発振や反応の鈍さとして現れます。疑わしい場合は、デフォルトのPIDにリセットして、新たに始めます。

ジャイロノイズ:ピクピクした予測不可能な動作の原因となります。適切なフィルタリング設定と良好なハードウェア絶縁が大きな違いをもたらすことがわかりました。

受信機が検出されない

受信機がフライトコントローラーと通信していない場合は、これらの一般的な問題を確認してください。

UARTの割り当てが正しくない:最も頻繁に発生する問題です。私は常に、受信機が接続されているUARTを再確認し、Portsタブで適切に設定されていることを確認します。

受信機プロトコルが間違っている:これも一般的な間違いです。Configurationタブのプロトコルは、受信機のタイプと一致している必要があります。

バインディングの問題: 通信障害の原因となることがあります。受信機の種類ごとに、バインディング手順を注意深く守ることを学びました。

配線の問題: 特に信号線とグラウンド接続に問題があると、通信ができなくなります。配線に問題がありそうな場合は、必ずマルチメーターで導通を確認します。


フライトコントローラーの応用トピック

セットアップを最適化したい経験豊富なパイロットのために、これらの高度な概念がより深い洞察を提供します。私はこれらの分野を探求するのに何年も費やし、自分のビルドを最大限に活用してきました。

PIDチューニングとフィルタリング

フライトコントローラーのパフォーマンスの中心は、PIDチューニングとフィルタリングにあります。これはFPVの世界で芸術と科学が出会う場所です。

PIDの基本

良いチューニングのためには、PIDコントローラーを理解することが基本です:

P (比例) は誤差に対して即時の修正を提供します。これは修正の「強さ」だと考えています。高すぎるとオシレーションが発生し、低すぎるとクアッドの反応が鈍くなります。

I (積分) は時間とともに誤差を蓄積します。これは風や不均衡なビルドのような持続的な力を克服するのに役立ちます。初心者はIターム使いすぎる傾向があると私は気づきました。少しで十分なのです。

D (微分) は誤差の変化率に反応します。これはPタームの修正を抑制し、オーバーシュートを防ぎます。Dタームを適切に設定することは、スムーズな飛行のために不可欠です。低すぎるとコーナーでバウンドし、高すぎるとモーターが熱くなります。

高度なフィルタリング

適切なフィルタリングは、飛行性能に大きな違いをもたらします:

ジャイロフィルタリングは、ノイズがPIDコントローラーに到達する前に除去します。ジャイロデータがクリーンであるほど、飛行性能が向上し、モーターが冷えることを学びました。

Dタームフィルタリングは、ノイズに特に敏感な微分項に特化しています。過剰なDタームノイズはすぐにモーターを熱くするので、これには特に注意を払っています。

ダイナミックノッチフィルタリングは、モーターノイズ周波数を自動的にターゲットにします。これは私にとってゲームチェンジャーでした。スロットルレベルに適応し、レイテンシを追加せずにノイズを大幅に低減します。

RPMフィルタリングは、ESCテレメトリーを使用して正確なノイズターゲティングを行います。問題のあるビルドでこれを初めて有効にしたとき、その違いは歴然でした。突然、クアッドはバターのようになめらかで、モーターも熱くなりませんでした。

静的フィルターは、既知のノイズ源を固定周波数でターゲットにします。レイテンシーが増えるので控えめに使用しますが、特定のノイズ問題に対処するには貴重です。

フィルターチューニングのアプローチ

私のフィルターチューニングへのアプローチは時間とともに進化してきました:

最近のBetaflightバージョンではかなり改善されたデフォルトまたはプリセットから始めます。多くの場合、カジュアルフライトには十分です。

本格的なパフォーマンスのために、ブラックボックスログを分析してノイズ特性を特定します。これにより、ターゲットが必要な特定の周波数が明らかになります。

応答性を維持しながら、特定のノイズをターゲットにするようにフィルターを調整します。これはバランス取りです。フィルタリングが多すぎるとレイテンシーが増え、少なすぎるとノイズが残ります。

少しずつ変更を加えて増分的にテストすることが重要です。一度に1つの変更を行い、次に進む前に徹底的にテストします。

重要なのは、フィルタリングとレイテンシーと応答性のバランスを取ることです。レイテンシーが多すぎる完璧なフィルタリングよりも、多少のノイズがあっても応答が鋭い方が良いのです。

ブラックボックスロギングと分析

フライトデータの記録は、チューニングとトラブルシューティングへのアプローチ方法を変えました:

ブラックボックスの設定

ストレージオプションには、オンボードフラッシュとSDカードがあります。容量が大幅に増えるので、本格的なチューニング作業にはSDカードを好んで使います。

ロギングレートは、詳細度と記録時間のバランスを取ります。初期チューニングでは、微妙な問題をキャッチするために高レートを使用します。長時間のフライトでは、レートを下げます。

ログするのに適切なパラメーターを選択することで、ファイルサイズを管理しやすくなります。ほとんどのチューニング作業では、ジャイロデータ、PID値、モーター出力に焦点を当てています。

ログの分析

INAVとBetafligthには、ブラックボックスログを探索するための独自のツールがあります。私はこれらのグラフを見つめて、パターンの解釈方法を学ぶのに無数の時間を費やしてきました。

GitHub - betaflight/blackbox-log-viewer: ブラックボックスで記録されたフライトログ用のインタラクティブなログビューア
ブラックボックスで記録されたフライトログ用のインタラクティブなログビューア - betaflight/blackbox-log-viewer
GitHub - iNavFlight/blackbox-log-viewer: ブラックボックスで記録されたフライトログ用のインタラクティブなログビューア
ブラックボックスで記録されたフライトログ用のインタラクティブなログビューア - iNavFlight/blackbox-log-viewer

PIDtoolboxは、フライトコントローラーのログを深く分析するための強力なツールです。

GitHub - bw1129/PIDtoolbox: PIDtoolboxは、ブラックボックスのログデータを分析するためのグラフィカルツール群です
PIDtoolboxは、ブラックボックスのログデータを分析するためのグラフィカルツール群です - bw1129/PIDtoolbox

私が注目する主要な指標には、ジャイロトレース (ノイズ用)、PID応答 (チューニング用)、モーター出力 (ヘッドルーム用) があります。これらの関係性が、クアッドのパフォーマンスについての真の物語を語ってくれるのです。

経験を積むことで、問題の特定が容易になります。私は様々な問題のシグネチャを認識することを学びました。ノイズはPIDの問題とは異なり、機械的な問題とも異なって見えます。

チューニングのためのログの使用

ノイズ分析は、フィルタリングが必要な周波数を特定するのに役立ちます。モーター周波数やその高調波に対応するFFTプロットのスパイクを探します。

ステップ応答は、機体が入力にどれだけ素早く反応するかを示します。過度のオーバーシュートなしに素早い応答が欲しいところです。

P項の評価により、発振や鈍さが明らかになります。良好なP項の応答は、素早い修正を示し、行ったり来たりを続けることはありません。

D項ノイズは、モーターが熱くなる一般的な原因です。モーター出力のスパイクに対応する増幅されたノイズをD項で探します。

モーターのヘッドルームにより、モーターが最大限に達していないことが保証されます。アグレッシブな操作中、モーター出力で少なくとも20%のヘッドルームが見られることを期待しています。

Betaflight CLIと高度な設定

コマンドラインインターフェイスは、GUIでは利用できない強力な設定オプションを提供します:

必須のCLIコマンド

diff allは、デフォルトと異なるすべての設定を表示します。これは、設定を確認し、他の人と設定を共有するための私のお気に入りのコマンドです。

dumpは、デフォルトを含む現在のすべての設定を表示します。これは、完全な設定を理解するのに役立ちます。

get [parameter]は、特定のパラメーター値を表示します。設定全体を調べることなく、個々の設定を確認するためにこれを使用します。

set [parameter]=[value]は、パラメーター値を変更します。これにより、フライトコントローラーのあらゆる側面を正確に制御できます。

saveは、現在の設定をメモリにコミットします。変更後にこれを使用することを学びました。忘れると、作業内容がすべて失われます。

resourceは、ピンと周辺機器のリソース割り当てを表示します。これは、高度な設定とトラブルシューティングに不可欠です。

resource [resource_type] [index] [pin]は、リソースを別のピンに再割り当てします。これを使用して、特定の機能用にピンを解放したり、ハードウェアの問題を回避したりしました。

statusは、システムのステータス情報を表示します。これは、どの機能がアクティブで、システムがどのように設定されているかを確認するのに役立ちます。

リソースの再マッピング

さまざまな機能のピンを再割り当てすることは、強力な機能です:

モーター出力を別のピンに移動できます。これを使用して、フライトコントローラーの損傷したパッドを回避しました。

UART再割り当てにより、シリアルポートを別のピンに移動できます。これは、デフォルトのUARTピンが破損していたり、別の機能に必要だったりした場合に私を救いました。

LEDコントロールは、さまざまなピン用に設定できます。これを使用して、デフォルトのLEDピンが使用できなかったビルドにLEDストリップを追加しました。

カメラコントロールやブザー出力などの特殊機能を再割り当てできます。この柔軟性により、そうでなければサポートされないビルドに機能を追加できました。

カスタムミキサー設定

標準以外のモーターレイアウトの場合、カスタムミキサーが不可欠です:

カスタムモーターミックスは、各軸に対するモーターの影響を調整します。これを非対称フレームや重いカメラマウントなどの異常なビルドに使用しました。

トライコプターやVテールなどの特殊な設定には、カスタムミキシングが必要です。デフォルトのミキサーは標準のクアッドに対して機能しますが、異常なものはカスタマイズが必要です。

スラストの線形化は、非線形のモーター特性を補正することにより、スロットル応答を改善します。これにより、スロットル範囲全体でスロットルがより一貫して感じられるようになります。

ファームウェアのコンパイルとカスタマイズ

カスタムファームウェアをビルドすることで、特定の最適化が可能になります:

カスタムファームウェアをコンパイルする理由

実験的な機能を有効にすると、最先端の機能にアクセスできます。公式にリリースされる前に新機能をテストするために、カスタムファームウェアをコンパイルしました。

特定のハードウェア用に最適化すると、パフォーマンスが向上します。不要なコンポーネントを削除すると、重要なものに処理能力を解放できます。

デフォルトをカスタマイズすると、優先する開始点が設定されます。私は、好みの設定を組み込んだカスタムビルドを維持しています。

バグを修正するには、公式リリースの前にパッチを実装する必要がある場合があります。特定の問題に対処するためにカスタムファームウェアをコンパイルしました。

コンパイルプロセス

開発環境のセットアップには、Git、ツールチェーン、およびその他の依存関係が必要です。この目的のために専用の開発VMを維持しています。

リポジトリのクローンは、作業するソースコードを取得します。常にビルドする特定のブランチまたはタグをチェックアウトします。

ビルドの設定には、ターゲットと機能の選択が含まれます。これは、ファームウェアに含まれるものをカスタマイズできる場所です。

コンパイルは、ソースからファームウェアをビルドします。最新のコンピューターにより、このプロセスは非常に高速になります。

フラッシュは、コンパイルされたファームウェアをフライトコントローラーにアップロードします。カスタムビルドをフラッシュする前に、常に元のファームウェアのバックアップを作成します。

一般的なカスタマイズ

ターゲットの変更により、ハードウェア固有の調整が可能になります。使用している特定のハードウェアにより適合するようにターゲットを変更しました。

機能トグルは、特定の機能を有効または無効にします。使用しない機能を削除すると、重要なものにリソースを解放できます。

デフォルトの変更は、開始設定を変更します。PID、レート、およびその他の設定に優先するデフォルトを設定します。

パフォーマンスの最適化は、特定のユースケースに合わせて調整します。レーシングビルドは、ロングレンジビルドとは異なる最適化の恩恵を受けます。


フライトコントローラーの問題のトラブルシューティング

最高のフライトコントローラーでも問題が発生する可能性があります。一般的な問題を診断して対処する方法は次のとおりです。

ハードウェアのトラブルシューティング

電源の問題

FCの電源が入らない、またはランダムに再起動する場合は、これらの一般的な原因を確認してください:

電圧レギュレーターの出力は、クリーンで安定している必要があります。マルチメーターを使用して、テストポイントで適切な電圧を確認します。

バッテリーの接続と電圧は、FCの動作範囲内である必要があります。定格を超える高電圧のバッテリーを接続して、フライトコントローラーを損傷したことがあります。

フィルターコンデンサーを追加または交換すると、電源関連の問題の多くを解決できます。電源問題に対する安価な保険として、ほとんどすべてのビルドに低ESRコンデンサーを追加します。

ショートは、不可解な電源の問題を引き起こす可能性があります。マルチメーターの導通モードを使用して、電源とグラウンド間のショートを確認します。

十分な電源容量は、特に多くの周辺機器を備えたビルドにとって不可欠です。FCは単独では問題なく電源が入るが、すべてのコンポーネントが接続されていると失敗する問題を見たことがあります。

センサーの問題

センサーが不規則な読み取りや安定性の低下を提供する場合:

センサーの再キャリブレーションは、多くの場合、軽微な問題を解決します。加速度計のキャリブレーション中は、クアッドが完全に水平になるようにします。

物理的損傷は、センサーのパフォーマンスに影響を与える可能性があります。激しいクラッシュでジャイロが損傷した後、フライトコントローラーを交換する必要がありました。

振動の絶縁を改善すると、センサーのパフォーマンスが大幅に向上します。現在、すべてのビルドでソフトマウントを使用しています。

ファームウェアの更新により、センサーの問題が解決することがあります。センサーの読み取りに影響を与える特定のファームウェアバージョンのバグを見たことがあります。

センサーが修理不能なほど損傷している場合、フライトコントローラーを交換するのが唯一の選択肢です。このため、プライマリビルド用の予備のフライトコントローラーを用意しています。

接続の失敗

周辺機器が検出されない、または通信が断続的な場合:

配線と接続を確認することが最初のステップです。拡大鏡を使用して、小さなはんだ接合部と接続部を検査します。

UART設定を確認すると、適切なポートで適切なプロトコルが有効になっていることが保証されます。トラブルシューティングに何時間も費やしたことがありますが、UARTで間違った機能を有効にしただけでした。

ケーブルを変えてテストすることで、接続の問題を特定できます。トラブルシューティング用に、動作確認済みのUSBケーブルを用意しています。

ピンやはんだ付けの損傷が原因で、断続的な問題が発生することがよくあります。肉眼では問題なく見えるはんだ付けを再加工することで、多くの問題を解決してきました。

デバイス間で信号レベルとプロトコルが一致している必要があります。3.3Vと5Vのデバイス間で電圧の不一致により、正しく通信できなかった問題に遭遇したことがあります。

ソフトウェアのトラブルシューティング

ファームウェアの問題

ファームウェアがクラッシュ、フリーズ、または予期せぬ動作をする場合:

最新の安定版ファームウェアにアップデートすることで、既知の問題が解決されることがよくあります。私は通常、依存しているビルドでは最先端のリリースを避けています。

特定のバグを回避するために、別のファームウェアバージョンを試すことができます。私の特定のセットアップに影響する問題を避けるために、ファームウェアをダウングレードしなければならなかったことがあります。

デフォルトにリセットして最初から再設定すると、原因不明の問題が解決することがあります。これは、特定の問題のある設定を追跡するよりも、多くの場合高速です。

チップを完全に消去して再書き込みすると、破損した設定やメモリがクリアされます。他のトラブルシューティングが失敗した場合の最後の手段として使用します。

ハードウェアの互換性の問題により、予期しない動作が発生する可能性があります。ファームウェアを更新する前に、サポートされているターゲットのリストを確認します。

設定の問題

クアッドが入力に正しく応答しない、または機能が有効にならない場合:

すべての設定を確認するのは面倒ですが効果的です。コンフィギュレーターの各タブを順番に確認します。

デフォルトにリセットして再設定すると、矛盾する設定による問題がよく解決します。特定の問題を見つけるよりも、時間が節約できることがあります。

モードスイッチの割り当てを確認して、期待通りに有効になっていることを確認します。レシーバータブを使用して、スイッチの位置が正しく認識されていることを確認します。

適切な制御のために、受信機チャンネルのマッピングを確認することが重要です。チャンネルが正しくマッピングされていないために、奇妙な動作が発生した問題がありました。

設定をエクスポートしてレビューすると、問題の特定に役立ちます。動作する構成と動作しない構成の違いを比較して、差異を見つけます。

パフォーマンスチューニングの問題

クアッドが振動したり、反応が鈍かったり、モーターが熱くなったりする場合:

PIDをデフォルトにリセットすると、既知の開始点が提供されます。ビルドに大幅な変更を加えるたびに、これを行います。

フィルター設定がビルドに適していることを確認します。フィルタリングが多すぎるとレイテンシが発生し、少なすぎるとノイズが残ります。

ゆるんだコンポーネントや損傷したプロペラなどの機械的な問題がないか確認することが不可欠です。ひび割れたフレームが原因で、チューニングの問題を追跡したことがあります。

ブラックボックスログを分析すると、特定の問題の洞察が得られます。これは、パフォーマンスの問題に対する最も強力なトラブルシューティングツールです。

ビルドタイプに適したプリセットを適用すると、よくある問題が解決されることがよくあります。最近のBetaflightバージョンのプリセットは非常に優れています。

フライトコントローラーを交換するタイミング

場合によっては、交換が唯一の選択肢です。以下の場合、フライトコントローラーを交換します:

物理的な損傷がパフォーマンスに影響する場合、特にジャイロやプロセッサーなどの重要なコンポーネントに影響する場合。損傷したボードを修理しようとしたことがありますが、めったに努力する価値はありません。

センサーが故障したり、信頼性が低下したりした場合。信頼性の低いジャイロを搭載したフライトコントローラーは、飛行が危険です。

プロセッサーやメモリの問題が原因で不安定になる場合。フライトコントローラーがランダムに再起動したりフリーズしたりする場合は、交換が必要です。

新機能にアクセスするためにアップグレードする場合、新しいハードウェアが必要になることがあります。新しいハードウェアを必要とする機能にアクセスするために、完全に機能するフライトコントローラーを交換したことがあります。

大きな水濡れや電気的損傷の後は、修理よりも交換の方が安全であることが多いです。濡れたフライトコントローラーを修理しようとした後、この教訓を学びました。しばらくは動作していましたが、飛行中に壊滅的に故障しました。


フライトコントローラーの将来のトレンド

フライトコントローラーの状況は急速に進化し続けています。私が考える今後の方向性は以下の通りです:

ハードウェアの進歩

H7などのより強力なプロセッサーが新しい標準になりつつあります。H7フライトコントローラーをテストしていますが、現時点での違いは微妙ですが、将来の機能のための余裕を提供しています。

ノイズフロアが低く、飛行性能が向上したセンサー。ジャイロの各世代は、感度を維持しながらノイズを除去することが上手になっています。

オールインワンソリューションが増えるなど、統合が進んでいます。高度に統合されたフライトスタックへの傾向は続き、ビルドがよりクリーンでシンプルになります。

コンポーネントがより小型で軽量になるなど、サイズの縮小が続いています。最新の16×16mmフライトコントローラーにどれだけ多くの機能が詰め込まれているかに驚かされます。

電力効率の改善により、ワットあたりのパフォーマンスが向上します。これは、長距離飛行や長時間飛行のビルドにとって特に重要です。

ソフトウェアのイノベーション

適応チューニングとフィルタリングのための機械学習が間近に迫っています。パフォーマンスを自動的に最適化するためのMLベースのチューニングの初期実験を見たことがあり、将来性を示しています。

GPSとナビゲーション機能の向上により、高度な自律機能が改善されています。ホビー用ドローンとプロ用ドローンの機能の差が縮まっています。

より直感的な設定によるセットアップの簡素化により、ホビーがより身近なものになっています。ファームウェアの世代ごとに学習曲線が緩やかになっています。

特定の飛行スタイルに合わせた専用ファームウェアオプションが登場しています。レース用、フリースタイル用、長距離用のファームウェアの違いが顕著になってきています。

デフォルト設定の改善により、開封後すぐに使える体験が向上しています。最新のフライトコントローラーは、デフォルト設定で非常に優れた飛行性能を発揮します。

新興テクノロジー

カメラベースのナビゲーションと障害物回避のためのコンピュータービジョンが、よりアクセスしやすくなっています。基本的なビジョンシステムを試してみましたが、ホビー用途でより実用的になってきています。

メッシュネットワーキングにより、ドローン間通信が可能になります。これにより、協調飛行と安全性の向上の可能性が開けます。

高度なテレメトリーにより、より包括的な飛行データが提供されます。パイロットが利用できる情報量は増え続けています。

設定とデータ分析のためのクラウド統合が一般的になりつつあります。飛行データを共有・分析するためのオンラインプラットフォームが登場しています。

デジタルツインを使用したシミュレーション統合により、仮想環境でのテストが可能になります。実際のハードウェアに適用する前に、シミュレーションを使用して構成をテストしたことがあります。


FAQ: フライトコントローラーに関するよくある質問

長年、フライトコントローラーについて数え切れないほどの質問を受けてきました。最も一般的なものは以下の通りです:

F4とF7フライトコントローラーの違いは何ですか?

F4とF7は、フライトコントローラーで使用されているSTM32プロセッサーシリーズを指します。私の経験では、主な違いは以下の通りです:

F7プロセッサーはより強力で(通常216-400MHzに対し、F4は168-216MHz)、より高いループレート、より複雑なフィルタリング、追加機能を可能にします。多くのフィルタリングを必要とする要求の厳しい状況で、その違いを最も感じます。

F7コントローラーは通常、より多くのUARTとより優れた全体的なパフォーマンスを備えています。これは、GPS、テレメトリー、カメラ制御などの複数の周辺機器を接続する場合に重要です。

F4コントローラーはより手頃な価格で、ほとんどの飛行スタイルに十分です。私の多くのビルドでは、パフォーマンスとコストの優れたバランスを提供するため、今でもF4ボードを使用しています。

ほとんどのパイロットにとって、F4で十分ですが、パフォーマンスの限界に挑戦したり、多くの周辺機器を接続する必要がある場合は、F7へのアップグレードが価値があります。

フライトコントローラーが損傷しているかどうかはどうすればわかりますか?

損傷したフライトコントローラーの兆候には以下のようなものがあります:

電源が入らない、またはUSB経由で接続できないことが最も明らかな兆候です。FCの電源が入らない、またはコンピューターに認識されない場合は、何かが間違っています。

センサーの読み取り値が不安定になったり、ドリフトしたりすることは、ジャイロの損傷を示している可能性があります。ハードクラッシュの後、ランダムな動きのためにクアッドが飛行不能になったことがあります。

予期しない再起動やフリーズは、プロセッサやメモリの問題を示唆しています。飛行中にクアッドがランダムに解除される場合、フライトコントローラーが故障している可能性があります。

煙が出たり、部品に目に見える損傷があったりすることは、明らかな兆候です。私は1つ以上のフライトコントローラーから魔法の煙を放出したことがあります。

動作中に異常な発熱が見られる場合は、内部の損傷やショートを示している可能性があります。FCが異常に熱くなる場合は、何かが間違っています。

コンフィギュレーターで永続的なエラーが発生する場合は、多くの場合ハードウェアの問題を示しています。ファームウェアを再フラッシュしても同じエラーが繰り返し表示される場合は、ハードウェアの問題を疑ってください。

適切な設定にもかかわらず、アームできない、または安定した飛行を維持できない場合は、センサーの問題を示唆しています。ベンチテストではすべてのテストに合格したが、空中で失敗したフライトコントローラーがありました。

初心者におすすめのフライトコントローラーは何ですか?

初心者には以下のようなフライトコントローラーをおすすめします:

iFlight SucceX-E F4やMatek F405-STDのような信頼性が高く、よくサポートされているもの。これらは時の試練に耐え、大規模なユーザーコミュニティを持っています。

品質と予算の制約のバランスを取るために、適度な価格(約30~40ドル)であること。学習中は高級な機能に費用をかける必要はありません。

簡単なセットアップと豊富なドキュメントのためにBetaflightと互換性があること。Betaflightエコシステムには、初心者向けのリソースが最も多くあります。

トラブルシューティングのために十分なドキュメントとコミュニティサポートがあること。必ず問題に遭遇するので、助けになるリソースがあることは非常に価値があります。

学習中のクラッシュに耐えられるだけの耐久性があること。私はコンフォーマルコーティングと堅牢な設計のボードを探します。

圧倒的な複雑さなしに必要不可欠な機能を含んでいること。OSDや電流モニタリングなどの機能は便利ですが、高度な機能は待つことができます。

F4プロセッサーは通常、初心者には十分で、F7は成長の余地を求める人のためのオプションです。私はF1プロセッサーから始めましたが、より高度なハードウェアの利点を理解するのに十分な知識があるまでは完全に満足していました。

どのフライトコントローラーでもどのESCでも使用できますか?

ほとんどの最新のフライトコントローラーはほとんどのESCで動作しますが、互換性に関する考慮事項があります:

プロトコルのサポートが重要です。FCとESCが同じプロトコル(DShot、Multishotなど)をサポートしていることを確認してください。私はほとんどのビルドにDShot600を好んで使用しています。パフォーマンスと信頼性のバランスが良いからです。

電圧の互換性が重要です。FCがESC/PDBから供給される電圧を処理できることを確認してください。定格以上の電圧に接続したために、フライトコントローラーを損傷したことがあります。

物理的な接続は、個々のワイヤーとリボンケーブルで異なります。FCとESCに互換性のある接続方法があることを確認してください。

FC/ESCスタックの場合、一緒に動作するように設計されていることを確認してください。ミックスアンドマッチは可能ですが、ユニットとして設計されたスタックは通常、より良い統合を提供します。

一般に、適切に設定されていれば、どの高品質のFCでもどの高品質のESCでも動作しますが、コンポーネントを一致させることで最高のエクスペリエンスが得られることが多いです。可能な限り同じメーカーのコンポーネントを使用するのが好ましいです。一緒に動作するように設計されているからです。

フライトコントローラーのファームウェアはどのくらいの頻度で更新すべきですか?

ファームウェアの更新に固定のスケジュールはありませんが、私は以下のガイドラインに従っています:

すべてがうまく機能している場合は、すぐに更新する義務はありません。「壊れていないなら直すな」という古い言葉がここに当てはまります。

必要な機能が新しいリリースに含まれている場合は、その機能のために更新します。私はRPMフィルタリングの改善のために、特にBetaflight 4.3に更新しました。

新しいリリースで対処されている問題が発生している場合は、バグ修正のために更新します。リリースノートをチェックして、自分が抱えている問題に対処しているかどうかを確認します。

メジャーバージョンの場合、リリース後数週間待ってからコミュニティのフィードバックを待ちます。他の人に先にバグを見つけてもらいましょう。

重要なレースや旅行の直前に更新するのは避けてください。私はこの教訓を痛い目に見て学びました。直前の更新で予期せぬ問題が発生する可能性があります。

更新する前に必ず設定をバックアップし、大幅な更新後に再設定に時間をかける覚悟をしてください。各クアッドの特定の設定についてメモを取っておくと、このプロセスが容易になります。

フライトコントローラーのジャイロノイズの原因は何ですか?

ジャイロノイズにはいくつかの原因があります:

モーター、プロペラ、フレームの共振による機械的振動が最も一般的な原因です。プロペラとモーターの適切なバランス調整が大きな違いを生むことがわかりました。

ESC、電源システム、配線からの電気的ノイズがジャイロの読み取りに影響を与える可能性があります。信号線を電源線から離すことで、これを減らすことができます。

センサーの限界により、固有のノイズフロアが生成されます。ジャイロモデルによってノイズ特性が異なります。

不十分な絶縁や剛性のあるマウントなどのマウントの問題により、振動が直接ジャイロに伝わります。私は今ではすべてのビルドでソフトマウントを使用しています。

損傷したコンポーネントによりノイズが増加する可能性があります。ハードクラッシュを受けたジャイロは、ノイズレベルが高くなる可能性があります。

ノイズを減らすには、通常、振動の絶縁を改善し、配線を改善し、高品質のコンポーネントを使用し、適切なフィルタリング設定を行う必要があります。私は最初に機械的な問題に対処し、次にソフトウェアフィルタリングを使用して残りのノイズを処理します。

フライトコントローラー間で設定を転送できますか?

はい、ただし制限があります:

設定は同じタイプのファームウェア(Betaflightからbetaflightへなど)間で最もうまく転送されます。異なるタイプのファームウェア間で設定を転送しようとしたときに、混合した結果になったことがあります。

類似のハードウェアは、設定を転送するときにより良い結果を提供します。あるF4ボードから別の類似のF4ボードに移行することは通常うまくいきます。

設定を保存するには、diff allコマンドを使用するのが最も信頼できる方法です。私はこの出力を各ビルドのテキストファイルに保存します。

コンフィギュレーターのバックアップ機能は、同一のハードウェアではうまく機能します。これは便利ですが、CLIコマンドほど柔軟ではありません。

一部の設定は、新しいハードウェアに対して常に手動で調整する必要があります。特にリソースマッピングはハードウェア固有であり、うまく転送されません。

転送された設定は常に注意深く確認してください。不適切な設定は予期しない動作やクラッシュの原因になる可能性があります。設定を転送した後、コンフィギュレーターの各タブを確認して、すべてが正しく表示されていることを確認します。

ハードウェアジャイロフィルタリングとソフトウェアジャイロフィルタリングの違いは何ですか?

この区別は、パフォーマンスを最適化する方法を理解するために重要です:

ハードウェアフィルタリングはジャイロセンサー自体に実装されており、信号がプロセッサーに到達する前に初期ノイズ低減を提供します。これはジャイロモデルによって異なり、ファームウェアで調整することはできません。

ソフトウェアフィルタリングはフライトコントローラーのファームウェアに実装されており、設定を通じてカスタマイズ可能です。これには、ダイナミックノッチフィルター、ローパスフィルター、RPMベースのフィルタリングが含まれます。

最新のフライトコントローラーは、両方のアプローチを組み合わせて使用しています。私は第一線の防御としてハードウェアフィルタリングに頼り、その後、ビルドの特定のノイズ特性に対処するためにソフトウェアフィルタリングを使用します。

ソフトウェアフィルタリングの利点は柔軟性です。特定のビルドと飛行スタイルに合わせて調整できます。欠点は、処理能力を使用し、レイテンシを引き起こす可能性があることです。


結論

フライトコントローラーは、あなたの意図を正確な飛行に変換する、FPVドローンの真の頭脳です。何年にもわたるビルドと飛行の後、私はこのコンポーネントが全体的なエクスペリエンスにいかに重要であるかを理解するようになりました。

フライトコントローラーのテクノロジー、選択基準、および構成オプションを理解することで、特定のニーズと飛行スタイルに合わせてパフォーマンスを最適化できます。最初のドローンを構築している場合でも、50番目のドローンを構築している場合でも、適切なフライトコントローラーを選択し、適切に構成することは、飛行体験に大きな影響を与えます。

テクノロジーは急速に進化し続けており、より強力なプロセッサ、より優れたセンサー、およびより洗練されたファームウェアにより、ますます高性能なプラットフォームが提供されています。フライトコントローラーのセットアップとチューニングを習得することで、ドローンの可能性を最大限に引き出し、独自の飛行スタイルに合った安定性、応答性、および機能の完璧なバランスを実現できます。

私はこれらの複雑なデバイスを理解するための旅で、認めたくないほど多くのドローンを墜落させましたが、失敗するたびに貴重なことを学びました。意図したとおりに正確に反応する完璧に調整されたクアッドの満足感は、すべてのトラブルシューティングを価値あるものにします。考えの延長線上にあるように感じるドローンの感覚に匹敵するものはなく、それを可能にするのがフライトコントローラーです。


参考文献とさらなる読み物