Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

機体の初期姿勢が前方を向いていないと、そもそもホバリングしない #88

Closed
tmori opened this issue Dec 22, 2023 · 3 comments

Comments

@tmori
Copy link
Contributor

tmori commented Dec 22, 2023

ヨー角:90度の場合

現象:QGCから離陸指示を出すと、プロペラは回転するが、浮上しない。そして、どっかへ飛んでいってしまう。

スクリーンショット 2023-12-23 6 17 55

ログ:

log_90deg.zip

ヨー角:180度の場合

現象:QGCから離陸指示も出していないのに、シミュレーション開始と同時に、浮上し始める。。

スクリーンショット 2023-12-23 6 20 31

ログ:

log_180deg.zip

rotor, thrustのログを確認しましたが、浮上指示は出していないっぽい。

ヨー角:270度の場合

現象:離陸指示を出すとQGCが「離陸することができません。機体位置が不明です。」とエラーメッセージを出す。
さらに、PX4からは以下の警告が出力される。

WARN  [health_and_arming_checks] Preflight Fail: High Accelerometer Bias
WARN  [health_and_arming_checks] Preflight Fail: vertical velocity unstable
WARN  [health_and_arming_checks] Preflight Fail: High Accelerometer Bias
WARN  [health_and_arming_checks] Preflight Fail: High Accelerometer Bias

ログ:

log_270deg.zip

@kenjihiranabe
Copy link
Collaborator

kenjihiranabe commented Dec 22, 2023 via email

@tmori
Copy link
Contributor Author

tmori commented Dec 22, 2023

ヨー角:180度の場合の原因は、これでした。

#89

暫定修正して、ホバリングすることを確認済みです。

ヨー角:90の場合も、この修正を適用することで、ホバリングすることを確認。

ヨー角:270の場合も、この修正を適用することで、ホバリングすることを確認。

@kenjihiranabe
Copy link
Collaborator

教訓:今回なぜ単体テストをすり抜けたか。
全方向に body を回してテストいるが、最初のベクトルが、v = {1, 0, 0 } だった。
この y=z=0 ベクトルはいくらどの方向に回しても、このバグはキャンセルされてでない。

   z_e =   (- s_theta)                                 * x
           + (s_psi * c_theta)                         * y
           + (c_psi * c_theta)                         * z;

なので。テストを追加しました。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants