Paul Riseborough
dbff89fbcb
EKF: Fix error preventing selection of MAG_FUSE_TYPE_AUTOFW
2017-10-12 19:54:35 +11:00
Paul Riseborough
6f7f05fdc0
EKF: Move MAG_FUSE_TYPE_AUTOFW control to the expected place
2017-10-12 14:50:23 +11:00
Paul Riseborough
e834522f62
EKF: Use fixed wing status flag in MAG_FUSE_TYPE_AUTOFW logic
2017-10-12 14:50:23 +11:00
Paul Riseborough
7b4c957ad4
ekf2: Add new mag fusion mode
...
Adds a mode where mag fusion is only used update the field estimates
2017-10-12 14:50:23 +11:00
Paul Riseborough
9c65968c3d
Merge pull request #334 from PX4/pr-ekf_minor_flow_fix
...
ekf: fix optical flow bugs
2017-10-12 09:14:29 +11:00
Paul Riseborough
68bad48598
Merge pull request #330 from CarlOlsson/pr-add_get_wind_vel_var
...
EKF: added get_wind_velocity_var function
2017-10-12 09:12:54 +11:00
Paul Riseborough
4db23b7b2e
EKF: Don't report terrain estimate invalid immediately when HAGL observations fail checks
2017-10-12 08:26:04 +11:00
Paul Riseborough
1119a9b0ac
EKF: Enable optical flow reversion to work if flow data is lost
...
Also improve reporting.
2017-10-12 08:02:54 +11:00
ChristophTobler
cdf6e6cd36
EKF: use delta_time to avoid division by zero
2017-10-11 15:15:06 +02:00
Paul Riseborough
d293c4231d
EKF: Protect against divide by zero caused by invalid optical flow
2017-10-11 21:54:47 +11:00
Paul Riseborough
ab9b8e1964
EKF: Prevent bad optical flow quality causing loss of aiding when on ground
2017-10-11 21:22:33 +11:00
ChristophTobler
b7e589b98a
EKF: only fuse optical flow if terrain is valid
2017-10-10 17:51:56 +02:00
ChristophTobler
81a64c0479
ekf: fix flow direction when on ground
2017-10-10 14:39:44 +02:00
ChristophTobler
6cb99ce8a8
ekf: add function to get in air status
2017-10-03 22:36:33 +02:00
CarlOlsson
8200e4b218
EKF: added get_wind_velocity_var function
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com >
2017-10-02 14:47:56 +02:00
Paul Riseborough
705f93d0bf
Merge pull request #327 from CarlOlsson/parameterize_max_rng_tilt
...
EKF: Parameterize maximum angle for rng fusion
2017-10-02 17:08:34 +11:00
CarlOlsson
0a7c3ecbc6
EKF: Parameterize maximum angle for rng fusion
2017-09-26 20:53:48 +02:00
Paul Riseborough
160e4d69c1
Merge pull request #323 from PX4/pr-ekfQuatMultOrder
...
EKF: use hamiltonian convention for quaternion multiplication order
2017-09-21 07:49:35 +10:00
Paul Riseborough
4411c7fd1c
Merge pull request #325 from PX4/pr-ekfFlowGyroBias
...
EKF: Fix bug in accumulation of IMU data for flow sensor gyro bias
2017-09-14 18:47:46 +10:00
Paul Riseborough
1d3e8edc46
EKF: Fix bug in accumulation of IMU data for flow sensor gyro bias calculation
2017-09-14 18:34:11 +10:00
Paul Riseborough
3b3326e250
Merge pull request #326 from TSC21/fix_travis
...
travis: install python3.5 for trusty in order to run pip3
2017-09-14 18:32:31 +10:00
TSC21
571a0f7da7
travis: use pyenv in order to force pip3 version
2017-09-14 09:22:09 +01:00
TSC21
7affb42f22
travis: install python3.5 for trusty in order to run pip3
2017-09-14 09:08:11 +01:00
Paul Riseborough
dd5b8525c3
EKF: Use hamiltonian convention for quaternion product order
2017-08-31 11:14:02 +02:00
Paul Riseborough
b57b5e869d
matrix: Use hamiltonian convention for quaternion product
2017-08-31 11:14:01 +02:00
Paul Riseborough
b0300b9723
Revert "attitude_fw delete unused and cleanup"
...
This reverts commit 25bd3ac5e6 .
2017-08-30 16:23:40 +02:00
Paul Riseborough
1531269f92
Merge pull request #319 from PX4/pr-attitude_fw-cleanup
...
attitude_fw delete unused and cleanup
2017-08-28 09:48:49 +02:00
Daniel Agar
25bd3ac5e6
attitude_fw delete unused and cleanup
2017-08-26 17:44:24 -04:00
Paul Riseborough
fac292fef9
Merge pull request #321 from dagar/pr-ekf_formatting
...
EKF trivial code style cleanup
2017-08-26 18:17:23 +10:00
Daniel Agar
99ba1c3745
EKF trivial code style cleanup
2017-08-25 10:09:11 -04:00
ChristophTobler
89236ef275
Merge pull request #314 from PX4/pr-check_stuck_rng
...
Pr check stuck rng
2017-08-21 07:54:06 +02:00
Peter Dürr
305a95aef9
Integrate Python-based tests and benchmark into Travis
...
* Unfortunately, due to the SWIG dependency, we need sudo to install on
Travis (conflicts when adding with debian-sid source prevent using addons)
which means we cannot use the container-based infrastructure anymore.
* Building the Python bindings requires g++5 (at least with -Werr set).
* When building the Python bindings on Travis, the numpy includes are not found
by cmake, so they have to be added separately by running a Python process with
`numpy.get_include()`
* The build script now (somewhat clumsily) depends on the RUN_PYTEST environment
variable. If it is set to anything other than "", it will make the tests and
run tests and benchmarks
2017-08-14 12:02:03 +02:00
Peter Dürr
15c8c24418
Fix time units on plots
...
* Time in plots was of by a factor of 1e3 due to wrong conversion from us.
2017-08-14 12:02:03 +02:00
Peter Dürr
b29067a188
Better handle Python dependencies
...
* Add requirements.txt file with required Python packages
* Read requirements.txt from CMakeLists.txt to check dependencies and alert the
user if necessary.
2017-08-14 12:02:03 +02:00
Peter Dürr
bb5719a0da
Add Python wrapper to ecl and use it to test functionality
...
* Add SWIG interface definition (and external numpy interface) to ecl classes
* Add section in CMakeLists.txt to build Python bindings and execute
Python-based tests
* Write (property-based) tests that show the basic functionality of the Python
bindings and the EKF (using pytest and hypothesis libraries)
* Write minimal benchmark for the EKF update (using benchmark plugin for pytest)
* Add plotting utilities to analyze tests
* Add lint script to keep the Python scripts clean
2017-08-14 12:02:03 +02:00
Peter Dürr
5988900044
Add getters for a few private variables of the EstimatorInterface
...
* For testing it is useful to have access to more internal states
* For the same reason I also promote the const FILTER_UPDATE_PERIOD_MS to
public
2017-08-14 12:02:03 +02:00
Peter Dürr
a2ed0a76f9
Make the destructor of EstimatorInterface virtual
...
* This is a sane choice (and should arguably always be done for classes with
virtual methods to avoid undefined behavior)
* It is required for wrapping the EstimatorInterface with SWIG (without virtual
destructor, deriving from the EstimatorInterface leads to
-Werror=delete-non-virtual-dtor).
2017-08-14 12:02:03 +02:00
Paul Riseborough
9cf0948bcf
matlab: add derivation for air data error equations
2017-08-12 20:59:41 +10:00
Paul Riseborough
3983ac23fa
Merge pull request #316 from PX4/pr-ekfTrueAirspeed
...
EKF: Add true airspeed accessor
2017-08-11 08:18:04 +10:00
Paul Riseborough
967720a9d7
Merge pull request #313 from PX4/pr-ekfYawReset
...
EKF: Improve in-flight mag error detection, recovery and isolation for fixed wing
2017-08-08 20:59:49 +10:00
Paul Riseborough
35ffd55481
EKF: Fix incorrect use of double precision operation
2017-08-07 10:34:19 +10:00
Paul Riseborough
cc5db74d1b
EKF: Add true airspeed accessor
2017-08-07 09:19:48 +10:00
ChristophTobler
8ecec58292
Check for stuck range finder measurements in terrain estimator
2017-07-31 17:59:44 +02:00
ChristophTobler
7252284628
Add check for stuck range finder measurements
2017-07-31 17:59:16 +02:00
ChristophTobler
41f4b62cdb
fix indentation
2017-07-31 17:58:03 +02:00
Paul Riseborough
596b8220e2
EKF: Output mag sensor isolation warning first time only
2017-07-31 19:39:07 +10:00
Paul Riseborough
ce806768b7
EKF: Improve in-flight mag error detection, recovery and isolation for fixed wing
2017-07-31 19:39:07 +10:00
Paul Riseborough
c230663b68
Merge pull request #309 from PX4/pr-ekfYawFusion
...
EKF: Improve efficiency of yaw fusion for External Vision
2017-07-31 19:37:15 +10:00
Paul Riseborough
ba5de96fcb
Merge pull request #311 from PX4/pr-ekfExtVis
...
EKF: Add ability to use EV and GPS data together
2017-07-29 16:29:53 +10:00
Paul Riseborough
3ee6898710
EKF: Enable origin to be maintained when starting aiding using EV only
...
When starting aiding using EV only and commencing GPS aiding later, this change means that the GPS origin is set to the local position 0,0 point rather than the current vehicle position. This avoids large changes in local position when GPs aiding starts.
2017-07-29 15:31:34 +10:00