Commit Graph
47967 Commits
Author SHA1 Message Date
Paul Riseborough e383b6a272 EKF: rework optical flow selection logic
Make use of range aiding movement check clearer.
Fix logic errors that caused rapid toggling of flow use when on ground.
2018-06-09 22:23:55 +02:00
Paul Riseborough 487e6a0901 EKF: enable user selection of auto mag free operation
Also modify check to not apply if EV yaw is being used.
2018-06-09 22:23:55 +02:00
Paul Riseborough 6bdbe032f9 EKF: Fallback to optical flow for all in-flight loss of navigation scenarios 2018-06-09 22:23:55 +02:00
Mohammed Kabir b4d2b8c57d EKF : introduce new architechture for navigation limits 2018-06-09 22:23:55 +02:00
Paul Riseborough 8a713398cb EKF: Improve ground effect compensation
Start deadline at zero so that initial rotor wash effect is rejected.
2018-06-09 22:23:55 +02:00
Paul Riseborough 39697f1196 EKF: rework optical flow switching 2018-06-09 22:23:55 +02:00
Paul Riseborough 1cfe845751 EKF: rework GPS quality check 2018-06-09 22:23:55 +02:00
Paul Riseborough 99a80387ed EKF: improve optical flow GPS quality checking 2018-06-09 22:23:55 +02:00
Paul Riseborough 7f36add241 EKF: scale GPS vertical accuracy check when using optical flow 2018-06-09 22:23:55 +02:00
Paul Riseborough fc9f532c34 EKF: relax range finder data continuity check 2018-06-09 22:23:55 +02:00
Paul Riseborough 93c456f2b8 EKF: Improve protection against badly conditioned dVel bias covariances
Reduces likelihood of Z delta velocity bias learning to wrong value.
2018-06-09 22:23:55 +02:00
Paul Riseborough 225057aaf5 EKF: Fix bug preventing use of terrain estimator 2018-06-09 22:23:55 +02:00
Paul Riseborough adb4a09beb EKF: Fix bug causing large yaw innovations when GPS is lost 2018-06-09 22:23:55 +02:00
Paul Riseborough f59cd0f5b0 EKF: Don't make detection of indoor operation dependent on optical flow
This is required because it can take several seconds for an optical flow sensor operation to be confirmed and there are also many use cases for indoor operation where no optical flow is used.
2018-06-09 22:23:55 +02:00
Paul Riseborough 1562a82dc2 EKF: Add parameter to adjust on-ground movement detector sensitivity 2018-06-09 22:23:55 +02:00
Paul Riseborough ea9e8246ed EKF: Improve detection of indoor flight condition 2018-06-09 22:23:55 +02:00
Paul Riseborough 565f99254c EKF: Reduce effect of yaw gyro bias when using optical flow indoors 2018-06-09 22:23:55 +02:00
Paul Riseborough e10798bfdf EKF: Add on ground movement detector 2018-06-09 22:23:55 +02:00
Paul Riseborough 2d3b65231b EKF: Reset yaw gyro bias learning when resuming use of magnetometer
The previous lack of yaw drift constraint will also mean that the yaw gyro bias estimate is likely to be incorrect and needs to be re-learned.
2018-06-09 22:23:55 +02:00
Paul Riseborough 8191068959 EKF: Don't start using mag if optical flow use is interrupted
If magnetometer use is being inhibited because an indoor condition has been detected (optical flow and poor or no GPS) and the optical flow fusion checks fail causing the EKF to stop navigating, we do not want the EKF to start using the magnetometer.
2018-06-09 22:23:55 +02:00
Paul Riseborough 4889e8432c EKF: Don't fuse multi rotor drag if yaw angle is bad 2018-06-09 22:23:55 +02:00
Paul Riseborough 092a8d8f21 EKF: Fix GPS validity time check error 2018-06-09 22:23:55 +02:00
Paul Riseborough 0160aaa568 EKF: Don't use magnetometer with optical flow only nav if GPS checks are failing 2018-06-09 22:23:55 +02:00
Paul Riseborough 84516760c0 EKF: Use stricter GPS accuracy test when optical flow is being used
This adds some hysteresis to the automated optical flow selection and also reduces likelihood of bad GPS being used when operating indoors,
2018-06-09 22:23:55 +02:00
Daniel Agar 619cc6aedc mavlink disable conversion helpers and use Matrix 2018-06-09 21:19:33 +02:00
Beat Küng a76c82f5f2 airframes: update 4050 generic 250 racer defaults
- P and D gains are too high for a racer
- default I gain is too low (0.25 is still quite low)
- use the thrust curve param instead of TPA
- improve responsiveness in Manual & increase max tilt angle to 60 degrees
- enable one-shot
- enable high-rate logging profile
- disable RC filter
2018-06-09 17:00:35 +02:00
Pavel Kirienko 883cba97f8 Merge pull request #133 from thirtytwobits/master
#132 proper googletest dependency and fixes for unittests on OSX
2018-06-09 15:09:48 +03:00
Daniel Agar a99f75dde2 Mavlink set last sent timestamp to space out initial publication
- remove QURT defines no longer required
2018-06-09 13:38:44 +02:00
Paul Riseborough 98465171aa ecl: include fix for bug affecting use of high frequency optical flow data 2018-06-09 13:38:04 +02:00
Paul Riseborough c84d35e3d7 mc_pos_control: rework height limiter to stay in velocity mode 2018-06-09 13:38:04 +02:00
Paul Riseborough d26da5fa3b mc_pos_control: Improve maximum height limiter
Implements a better method of determining when to switch from velocity to altitude control to keep height limit from being exceeded.
This method removes the overshoot and transients in height caused by the switching of the previous algorithm.
2018-06-09 13:38:04 +02:00
Paul Riseborough f0a1cd197e mc_pos_control: formatting fixes 2018-06-09 13:38:04 +02:00
Paul Riseborough b77845a3c0 mc_pos_control: Fix bug in calculation of altitude limit
The correction for stopping distance applied to the maximum altitude limiter uses the vertical velocity estimate and gives the same offset for both positive (down) and negative (up) velocity.
This calculation has been corrected and simplified and variable names changes to make the functionality clearer.
2018-06-09 13:38:04 +02:00
Paul Riseborough 967b27f131 ecl: rework optical flow selection logic
Fixes a race condition introduced by use of _is_dead-reckoning.
Only runs flow use logic when there is flow data available
2018-06-09 13:38:04 +02:00
Paul Riseborough e3a6528a80 ecl: include fixes to flow selection logic 2018-06-09 13:38:04 +02:00
Paul Riseborough 366e36a07b ekf2: Update parameter description 2018-06-09 13:38:04 +02:00
Paul Riseborough d46ee571ce ecl: test changes to pr-ekfOptFlowFixes 2018-06-09 13:38:04 +02:00
Mohammed Kabir 9a83f55c6a ecl: test PX4/ecl/pull/452 2018-06-09 13:38:04 +02:00
Mohammed Kabir c1169eb38b mc_pos_control : update to use new navigation limits architechture 2018-06-09 13:38:04 +02:00
Mohammed Kabir 8f5ceac936 ekf2 : use INFINITY when altitude limiting is not needed 2018-06-09 13:38:04 +02:00
Mohammed Kabir 1a2f9dd37a land_detector : use INFINITY when altitude limiting is not needed 2018-06-09 13:38:04 +02:00
Mohammed Kabir 31aa1cbf01 simulator : publish optical flow limits over uORB 2018-06-09 13:38:04 +02:00
Mohammed Kabir e8f1d50758 mavlink : update for compatibility with new navigation limits architechture 2018-06-09 13:38:04 +02:00
Mohammed Kabir 1d1dec0a8b inav : update for compatibility with new navigation limits architechture 2018-06-09 13:38:04 +02:00
Mohammed Kabir 9483885ed9 lpe : update for compatibility with new navigation limits architechture 2018-06-09 13:38:04 +02:00
Mohammed Kabir 6a9377846f ekf2 : update to use new navigation limits architechture 2018-06-09 13:38:04 +02:00
Mohammed Kabir 8299f571c8 msg : add height limits to local position 2018-06-09 13:38:04 +02:00
Mohammed Kabir 7f1686171b sensors : add parameter for maximum flow rate 2018-06-09 13:38:04 +02:00
Mohammed Kabir 32a7097018 px4flow : publish sensor limits over uORB 2018-06-09 13:38:04 +02:00
Mohammed Kabir 230d6c5aa2 msg : add sensor limits to optical flow message 2018-06-09 13:38:04 +02:00