Armattan Badger 5" Kit (バンドル) <8> PID Tuning 2

前回PIDの大雑把な概要を記事にしたので、今回からは実際の作業に移りたいと思います。
PとかIとかDとか言われてもピンと来ない方は是非下記の前回記事もご参考ください。

Armattan Badger 5" Kit (バンドル) <7> PID Tuning 1

今回から行う設定の目標としては、全体としてはデフォルトをベースに微調整で良いと考えているものの、全体としてギクシャクした感じを受けるので、もっとクリーンな印象というか、動作に安定感が欲しいというか、ブラッシュアップしたい。と、言う。

これだけだと「なんとなく良くしたい」に近く聞こえるとは思うのですが、自分の中ではデフォルトで飛ばした時に感じた違和感みたいなものは割と明確にあります。

スライダー調整では基本的にRollとPitchのバランスは変わらないので、今回の作業は、まずRollとPitchのPの値を確定して、その後IとFFをデフォルトに戻し、その時点でバランスの良いDの値を一旦探します。そして好みに応じてIとFFを調整した上で、このあたりでD Minを有効にし、再度バランスの良いD Maxを決定する、という流れで進めて行きます。

Armattan Badger 5" Kit (バンドル)と同じ構成の方は、Pの確定までは全く同じ数値を使用してもおそらく問題なく、IとFFに関してはRatesの設定や好みで全然変わってくるかも知れません。

Ratesに関して、自分は最近そんなにスナッピーにし過ぎないというか、どの軸もMax Vel [deg/s]が1000未満の上記の設定が気に入っていて、特にYaw軸はかなり遅い方なのではないかと思います。

このRatesの設定によって同じ構成でもI、D、FFの設定すべき数値が変わってくる可能性は高いです。
構成が違うなら全然違って当然なのですが、使用するプロペラが違うだけでも随分変わる可能性があります。経験的には、より深いピッチのプロペラほど権限が強く結果的にPの値が低くなるかなという感じがするのですが、今時のプロペラは形状がそんなにシンプルではないので、一概には言えないなというところです。

また、ご紹介する設定方法を実践する場合、Pの値を出す上でガクガクの機体をコントロールする必要があります。バウンスバックの確認で各軸のフリップも出来る必要が出てきますので、ご注意ください。

まだ操作に自信のない方や設定にそんなに時間をかけたくない方は、デフォルトをベースに少しスライダーを動かしてみたりしてセッティングするのが便利で、特にArmattan Badger 5" Kit (バンドル)であればそんなに目立った問題もなかったので、デフォルトをベースにスライダーの変更だけで考えるのもそんなに悪くない方法です。

また、同じ構成であればPを確定する作業はスキップして、Pはこの記事の数値を使用し、他の数値をデフォルトまで戻したところからスタートするのも良いかも知れません。

とにかくArmattan Badger 5" Kit (バンドル)でなくとも、いまどきの5インチフリースタイル機であれば、Betaflightデフォルトで全然使い物にならないという状況はあまりないのかなと思うので、今回の方法はちょっとこだわって設定を出して見たいぞ、という方向けですね。

目的に応じて一定のバランスを保ちながら調整して行く為のスライダーだと思うのですが、今回はRollとPitchのバランスが本当に正しいのか見直すのが目的の1つなので、今回は数値を入力して設定します。

上記画像で、まず緑の四角で示したD MinをOFFにします。

そもそもD Minって何だっけ、と思い、今回改めて復習しました。
この機能はBetaflight4.0の時に追加されたもののようで、直進であったり、カーブであったりという通常の飛行時にはDの値はそんなにアクティブになる必要がなく、フリップの時など激しいPの上昇に対してはアクティブなDが求められるというDの特性を考慮して追加されたという事のようです。
2段階のDを設定する事で、通常飛行時は主にD Minの数字を使い、フリップの時などにD Maxまで引き上げる事でD Maxにより高い数値を設定してもモーターの発熱を抑える事が出来るというもの。

実際にログを参照しても、Dがアクティブになるのはフリップなどで大幅にPが動いた時だけなので、バウンスバックを抑えるために大きくなってしまったDが通常飛行時に不必要に敏感にならない為には有効な設定と考えられます。

D Min自体の機能は非常に良さそうなので、最終的には利用したいのですが、途中段階でD項目が二つあると把握しづらくなるため一旦オフにしておきます。

先程の図に戻って赤い四角で示したDの値を0にします。今回RollとPitchの設定値を最適化するのが大きな目標で、Yawについてはそんなに不満もないので、Yawは一切変更していません。

最後に、青の四角で示したP、I、FFを全てデフォルトの50%に落とします。なるべくPそのものの上限を見たいと思っているだけなので、全て30%とか10%にする方が良いかも知れないのですが、大体で良いかなと思ったので50%にしました。

この後、少し飛ばして様子を見て、RollのPの数値を上、さらに飛ばして、という事を繰り返し、最終的にスロットルを激しく引き上げた時に振動を感じる様になるまでPの値を上て行きます。段々プロペラの音がまずい感じになり、カーブや降下中に激しいプロップウォッシュが現れるようになります。
どんどん制御するのが難しくなるのですが、スロットルを一気に引き上げた時に振動が出るのが確認できるまで、気にせずにさらにPの数値をあげて行きましょう。

Dの値が0になっているので、どんなにガクガクしていてもフィルターが適切に設定されていればモーターが熱くなる事は無いはずです。

Pの値が低いうちはなかなか急激なスロットルで振動を確認できないので、10ポイントずつくらい、どんどん上げてしまいます。
しかし、あまりにもPが高くなりすぎるとスロットルを引き上げたあとの激しい振動で機体が全然降りてこないという非常に恐ろしい体験をするので、Pがそろそろかなと言うところまで高くなってきたら、10ポイント、もしくは5ポイントなどと一気に上げるのではなく、せめて3ポイントとか、とにかく少しづつ数値を上げるようにします。
制御が難しくて狭いところでは怖いので、広い場所でテストを繰り返しましょう。

今回Rollに関しては100でスロットルを引き上げた時になんとなく振動を感じるようになりました。
FPVカメラの映像で振動しているのがわかる程度までPの値を上げる方法をとっているのでわざわざログを見るまでも無いのですが、上記画像でオレンジ色のスロットルを引き上げたタイミングで過剰なP(赤)によりジャイロ(紫)が振動しているのがわかります。

次に、RollのPを先程の21まで戻し、今度はPitchで同じ手順でPの値をあげて行きます。RollとPitchはどちらが先でも構いません。今回Pitchは165で振動を感じるようになりました。

なぜRollとPitchで比較するとPitchの方が高い数値になるのか、という疑問に対して、フレームのシルエットがストレッチXだからかな、と思ってしまうのですが、どうやら違うみたいです。

どこかで読んだ記事なので、信憑性はなんとも言えないのですが、フリースタイル機はGoproやバッテリーなどが機首から機尾へ向けて直線的にレイアウトされているケースが多く、Pitch方向の回転を考えた時に重量が分散しています。

そのため、Pitch方向はより大きな力で制御してあげる必要があるとの事。逆に、Roll方向で考えるとセンターに重量が集中しているので、より少ない力で簡単に回せそうな感じがしますよね。この説明で妙に納得してしまったのですが、このタイプの機体では普通の事のようなので不安になる必要はありません。

さて、Pの上限が大体把握出来たら、緑の四角で示した部分、振動が出た値の50%をPの値として入力します。

この50%というのは、FPVカメラで認識できる振動が出るよりもずっと前に振動は始まっているため、50%くらいが良いのではないか、という記事を読んだところから50%で試して、結果的に具合が良さそうだったので50%にしています。

もしかしたら60%とかもう少し高い数値でもバランスが取れる可能性もあるのですが、Pが高すぎる事によりFFであったり、他の数値が不自由になる事もあると感じるので、フリースタイル機ならではのスムーズさが欲しければ50%で良いのでは無いかと思います。

Pが高い必要があると言うことは、それだけ通常の制御に力が必要な機体であるという事でもあるので、そういう意味では重量が分散していたり、フレームにガタつきがあったりという運動性能が低い機体になってしまっている可能性もあります。

Pが高いとDも高い数値が求められ、Dが高いとモーターが熱を持ちやすくなります。もしその対応の為フィルターを増やす事になると、多くの遅延を許容しなくてはならず、その遅延が原因でプロップウォッシュがひどくなったりという事になるので、Pは高ければ良いというものでもありません。もし少ないPで満足な制御が達成されておりDの数値をそんなに上げなくて良いなら、もしかしたらもっと攻めたフィルターの設定でも安心して運用出来るかも知れませんね。

ただし、Pが低すぎると制御する力が弱く、機体に対して不足していれば当然動作のシャープさが失われるので、Pの値が低すぎるのも問題があります。何を積んでいるのか、どんなフレームなのか、どんな構成なのかによってバランスの良い数値にしましょうという事ですね。用途がフリースタイルでなく、ある程度のバウンスバックを許容するならば、目指すところも違い、当然ここでの判断も変わってくるものと考えられます。

次に青の四角で示した部分はデフォルトの数値を戻します。Dにデフォルトの数値を戻した時点でD Minを入れてしまっても良いかと思います。

新しいPと、デフォルトのその他の数値で再度テストフライトを行い、改善点とバウンスバックなどの様子を見るのですが、今回バウンスバックは気になりませんでした。もしバウンスバックが気になる場合はモーターの熱を確認しながら少しづつ該当する軸のDの値を上げて行きましょう。

まだ途中ですが、今回はここまでです。次回は微調整を行いましょう。

ArmattanBetaflight

JACK によるブログ

DAYSCAPE ( DIYドローン オンラインショップ ) では、FPVドローン、産業開発ドローンの分野に関する商品の紹介やドローンの組み立て、使用方法などの情報発信を行っています。

ピックアップ

Holybro X500 V2 フレームキットHolybro X500 V2 フレームキット
HOLYBRO Holybro X500 V2 フレームキット
販売価格¥23,430
在庫あり
Holybro Pixhawk 6C MiniHolybro Pixhawk 6C Mini
HOLYBRO Holybro Pixhawk 6C Mini
販売価格¥21,340
在庫あり