記事ディレクトリ
25.1.1 センサーのテスト
センサーをオートパイロットに接続した後、Mission Planner を使用してオートパイロットに接続し、[フライト データ]画面の[ステータス]タブを開きます。センサーが実行されている場合は、 opt_m_x、opt_m_y、およびopt_qua の値がすべて 0 以外であることがわかります。
25.1.2 センサーの校正
1.オートパイロットを接続し、 LOG_DISARMEDを1に設定して、ロック時のロギング機能が有効になるようにします。
2.凹凸のある表面と十分な光 (自然光または強い白熱灯) がある場所を見つけます。
3.プロペラを取り外します (安全第一)。
4.機体の電源を入れ、水準器を体や目から離して置きます。
5.約 1 秒以内に、航空機はロール軸を中心に-15~ +15度回転し、再び元に戻ります。5〜10回繰り返します。回転中、片目を閉じるとセンサーの中心と背景は静止したままになります。
6.航空機のピッチ軸の周りで繰り返します。
7.データフラッシュログをダウンロードし、 OF.flowX、 OF.bodyX、およびIMU.GyrXデータをプロットします。このようになるはずです。
8. OF.flowXがOF.bodyXより大きいか小さい場合は、 FLOW_FXSCALERパラメーターを変更することで調整
9. OF.bodyXがIMU.GyrXに場合、または符号が反対の場合は、 FLOW_ORIENT_YAWパラメータが正しく設定されていないか、流量センサーが下を向いていない可能性があります
10. OF.flowY、 OF.bodyYband、およびIMU.GyrYデータをプロットします。このようになるはずです。
11. OF.flowYがOF.bodyYより大きいか小さい場合は、 FLOW_FYSCALERパラメーターを変更することで調整
12. OF.bodyYがIMU.GyrYに場合、または符号が逆である場合は、 FLOW_ORIENT_YAWパラメータが正しく設定されていないか、流量センサーが下を向いていない可能性があります。
25.1.3 測距センサーの検査
EKF5.meaRng情報については、フロー センサー校正テストのフラッシュ ログを確認してください。次のことを確認してください。
1.連続距離測定が可能です。
2.地上で出力される距離は、期待値の10 cmです (レーザーは傾斜した場所で測定されるため、車両がロールしたりピッチしたりすると、測定距離が増加することに注意してください)。
25.1.4 ロック解除前のチェック
GPS を使用せずに徘徊者でロック解除と離陸を許可するには、以下の画像に示すように、 GPSロック解除チェックをオフにする必要があります。「すべて」と「GPS」のチェックを外し、他のすべてのオプションをオンにします。
オプティカル フローを有効にする場合はソナー/距離計データが良好である必要があるため、追加のロック解除前チェックを実行する必要があります。
航空機がロックされている場合は、航空機を50cm以上2m以下の高さまでまっすぐ持ち上げる必要があります (距離計が2mを超える距離を表示した場合は、自動操縦を再起動する必要があります)。
ロック解除チェックに失敗すると、「 PreArm: check range finder 」というエラー メッセージが表示されます。
このチェックは、「パラメータ/ソナー」のロック解除チェックをオフにすることで無効にできます。
25.1.5 初飛行
1. EKF2の場合はEK2_GPS_TYPE = 0に設定し、 EKF3の場合はEK3_SRC1_VELXY = 0を設定しますこの段階ではEKFにオプティカル フローを使用させたくない
2.高度50cm~ 3mの範囲内で小さな傾斜角でSTABILIZまたはAltHold条件 (ローター) でホバリングするか、またはQSTABILIZEまたはQHOVER条件 (クアッドローター固定翼) でホバリングします。
3.フラッシュ ログをダウンロードし、 Mission Plannerで次のように描画します
4. EKF5.meaRng は航空機の高度変化に関連付けられる必要があります。
5. OF.flowXとOF.flowYを変更する必要があります。
6. OF.bodyXおよびOF.bodyY は、 IMU.GyrXおよびIMU.GyrYと一致する必要があります。
25.1.6 2回目の飛行
!警告
この飛行を安全に完了するには、航空機の周囲に少なくとも15 メートルの空間が必要です。オプティカルフロー速度の推定が不正確な場合、警告はほとんど出ず、航空機はすぐに最大バンク角まで傾く可能性があります。
1. EKF2の場合はEK2_GPS_TYPE = 3を設定し、 EKF3の場合はEK3_SRC1_VELXY = 5およびEK3_SRC1_POSXY = 0を設定して、 EKF がGPSを無視して流量センサーを使用できるようにします
2.送信機で徘徊モードとホバー モードが利用可能であることを確認します。
3.地上管制局マップ上に「 EKF 原点」を設定します。Mission Plannerを、「 Set Home Point Here」を選択し、「 Set EKF Origin Here」設定を選択します。
4.徘徊状態で離陸し、回転翼航空機/四葉飛行機を約1mの高さまで上昇させます。
5.航空機が加速し始めたり、ピッチやロールの動きが不安定になった場合は、ホバリングと着陸に切り替えます。理由を調べるには、ログ ファイルをダウンロードしてフォーラムで共有する必要があります
6.所定の位置に留まっている場合は、成功です。高さを変更して徘徊モードで移動できるようになります
25.1.7 通常の動作設定
EKF2の場合:
1. EK2_ENABLE = 1を確認し、 EKF2を有効にします。
2.オプティカルフローセンサーに応じてEK2_FLOW_DELAYを設定します。
3. GPSなしでオプティカル フロー センサーのみを使用するには、 EK2_GPS_TYPEを3にオプティカル フロー センサーでGPSを使用するには、これを0に設定します。
EKF3の場合:
!注意
ArduPilotファームウェア4.1以降では、デフォルトでEKF3 が有効化され、使用されます。
1. EK3_ENABLE = 1を確認し、 EKF3を有効にします。
2. EKF3 を使用するには、 AHRS_EKF_TYPE = 3を設定します。
3. EK3_SRC_OPTIONS = 0を設定してFuseAllVelocitiesを無効にします。
4.オプティカル フロー センサーに応じてEK3_FLOW_DELAYを設定します。
5. EK3_SRC1_POSXY = 3に設定します( GPSからのメインの水平位置、 0に設定されている場合のみオプティカル フロー センサーを使用します
6. EK3_SRC1_VELXY = 5 (OpticalFlow からのメイン水平速度)を設定します
7. EK3_SRC1_POSZ = 1 (気圧計からの主垂直位置)を設定します
8. EK3_SRC1_VELZ = 0 (マスター垂直速度センサーなし)を設定します
9. EK3_SRC1_YAW = 1 (コンパスからのメインヨー/方位)を設定します
- さらに、GPS はEKF光源切り替え機能を使用してOpticalFlowと連携できます。
- EKFソースの切り替えについては、「GPS/非 GPS 移行」を参照してください。
!注意
回転翼航空機にオプティカル フロー センサー (および距離計) が有効化され、唯一の水平位置ソースとして指定されている場合 (例: ` EK3_SRCx_VELXY`=OpticalFlowおよび`EK3_SRCx_POSXY`=None )、航空機の方向はパイロットが要求する位置推定 制御モード (つまり、LoiterまたはPosHold ) で飛行している場合、航空機は`RNGFNDx_MAX_CMで指定された距離計の最大高度を超えることはありません。これは安全機構です。そうしないと、航空機が距離計の範囲外を飛行したときにEKFフェールセーフが作動します。
25.1.8 ビデオの例 (コプター-3.4)
25.1.9 無線校正
Copter-4.2.0には飛行校正手順が含まれています。
1. RCx_OPTION = 158 (オプティカル フロー キャリブレーション) を設定して、補助スイッチからキャリブレーションを開始できるようにします。
2. GPSを使用するようにEKF3を設定します(デフォルト)。
- EK3_SRC1_POSXY = 3 (GPS)
- EK3_SRC1_POSZ = 1 (バロ)
- EK3_SRC1_VELXY = 3 (GPS)
- EK3_SRC1_VELZ = 3 (GPS)
- EK3_SRC1_YAW = 1 (コンパス)
- EK3_SRC_OPTIONS = 0 (FuseAllVelocities を無効にする)
3.機体を徘徊モードで少なくとも10 メートル飛行させます(高ければ高いほど良いですが、距離計の範囲内で)。
4.補助スイッチをハイにすると、校正が開始されます。
5.ロールスティックとピッチスティックを使用して、機体をロール方向とピッチ方向に前後に動かします。
6. GCS の「情報」タブで、キャリブレーションの完了を確認する次の出力を確認します。
FlowCal: 開始しました
流量計算: x:0% y:0%
流量計算: x:66% y:6%
流量計算: x:100% y:74%
FlowCal: 収集されたサンプル
FlowCal: scalarx:0.976 fit: 0.10 <-- "fit" 値が低いほど優れています
FlowCal: スカラリー:0.858 フィット: 0.04
FlowCal: FLOW_FXSCALER=30.00000、FLOW_FYSCALER=171.0000
7.航空機を着陸させ、 OpticalFlowを使用するようにEKF3をセットアップします。
- EK3_SRC1_POSXY = 0 (なし)
- EK3_SRC1_VELXY = 5 (オプティカル フロー)
- EK3_SRC1_POSZ = 1 (バロ)
- EK3_SRC1_VELZ = 0 (なし)
- EK3_SRC1_YAW = 1 (コンパス)
- EK3_SRC_OPTIONS = 0 (FuseAllVelocities を無効にする)
8.機体を再度テスト飛行して性能を確認します。
着陸とキャリブレーションとテストの間のEKF3パラメータの変更を回避するもう 1 つの方法は、パイロットが飛行中に GPS とオプティカル フローを手動で切り替えるようにGPS /非 GPS移行を設定することです。パイロットがリモート コントロール入力8 ( 2ポジション スイッチ) を使用してキャリブレーションを開始し、リモート コントロール入力9 ( 3ポジション スイッチ) を使用してGPSとオプティカル フローを切り替えると仮定すると、完全なパラメータ リストは次のとおりです。
- RC8_OPTION = 158 (オプトフロー校正)
- RC9_OPTION = 90 (EKF Pos Source) 低は GPS、中は OpticalFlow、高は未使用
- EK3_SRC1_POSXY = 3 (GPS)
- EK3_SRC1_POSZ = 1 (バロ)
- EK3_SRC1_VELXY = 3 (GPS)
- EK3_SRC1_VELZ = 3 (GPS)
- EK3_SRC1_YAW = 1 (コンパス)
- EK3_SRC2_POSXY = 0 (なし)
- EK3_SRC2_VELXY = 5 (オプティカル フロー)
- EK3_SRC2_POSZ = 1 (バロ)
- EK3_SRC2_VELZ = 0 (なし)
- EK3_SRC2_YAW = 1 (コンパス)
- EK3_SRC_OPTIONS = 0 (FuseAllVelocities を無効にする)
!注意
フライト キャリブレーションを使用するには、EKF3 を有効にする必要があります。これは、ArduPilot 4.1以降のデフォルト設定です。