Land Detector on pure VIO
-
Hi all
I have a customized drone running purely on VIO (EKF2_AID_MASK == 280, GPS and mag are both not attached) with the various hardware transplanted from a seeker.
I just cant seem to get the Land Detector working when on Position mode (does not disarm on landing). Works fine on Manual/Stabilized mode though.
Just wondering if anyone knows what might be the cause.
Saw a similar topic here but unrelated:
https://forum.modalai.com/topic/471/land-detector-not-working-after-several-landingsSome of the Land Detector params that i have:
LNDMC_ALT_MAX -1.00
LNDMC_ROT_MAX 500
LNDMC_XY_VEL_MAX 1.50
LNDMC_Z_VEL_MAX 0.50
MPC_THR_HOVER 0.51
MPC_THR_MAX 0.70
MPC_THR_MIN 0.15
COM_DISARM_LAND 0.10Thanks
-
Hi all
I have a customized drone running purely on VIO (EKF2_AID_MASK == 280, GPS and mag are both not attached) with the various hardware transplanted from a seeker.
I just cant seem to get the Land Detector working when on Position mode (does not disarm on landing). Works fine on Manual/Stabilized mode though.
Just wondering if anyone knows what might be the cause.
Saw a similar topic here but unrelated:
https://forum.modalai.com/topic/471/land-detector-not-working-after-several-landingsSome of the Land Detector params that i have:
LNDMC_ALT_MAX -1.00
LNDMC_ROT_MAX 500
LNDMC_XY_VEL_MAX 1.50
LNDMC_Z_VEL_MAX 0.50
MPC_THR_HOVER 0.51
MPC_THR_MAX 0.70
MPC_THR_MIN 0.15
COM_DISARM_LAND 0.10Thanks
I've figured out why.
My original MPC_LAND_SPEED and MPC_Z_VEL_MAX_DN were 0.6 and 0.5 respectively.
Thanks to the following chunk of code from MulticopterLandDetector.cpp, descend_vel_sp will never be true.
if (_flag_control_climb_rate_enabled) { vehicle_local_position_setpoint_s vehicle_local_position_setpoint; if (_vehicle_local_position_setpoint_sub.update(&vehicle_local_position_setpoint)) { // setpoints can briefly be NAN to signal resets, TODO: fix in multicopter position controller const bool descend_vel_sp = PX4_ISFINITE(vehicle_local_position_setpoint.vz) && (vehicle_local_position_setpoint.vz >= land_speed_threshold);Had to increase MPC_Z_VEL_MAX_DN and that solved my problem
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login