kamilritz
cac5f3fd6d
GTest and Coverage cleanup and Basic EKF GTest
2019-10-28 11:04:38 +01:00
Martina Rivizzigno
fcea13eef8
add gtest, temp disable swig
...
(cherry picked from commit 4008d163d77f503e6acbd7ddc1d87ac6d479c897)
2019-10-28 11:04:38 +01:00
RomanBapst
9b4b24ee71
removed unused definition
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2019-10-24 07:55:37 +11:00
RomanBapst
0e3a0b8659
range_finder_checks: parametrised signal quality hysteresis duration
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2019-10-24 07:55:37 +11:00
RomanBapst
16d1e15b51
addressed review comments
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2019-10-24 07:55:37 +11:00
RomanBapst
6bc6f26043
range_finder_checks: set range height to valid if signal quality is non-zero
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2019-10-24 07:55:37 +11:00
RomanBapst
6299d8199c
ekf_helper: use latest validated range sample to reset height
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2019-10-24 07:55:37 +11:00
RomanBapst
00f49e62c2
cleanup checks of range finder data
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2019-10-24 07:55:37 +11:00
Paul Riseborough
4d37065f1b
EKF: Make use of inverse rotation function consistent with name
...
The quaternion to inverse rotation matrix function has been updated so that the rotation it produces is the inverse to that produced by the matrix library and the the inverse of the quaternion is uses. This function is now used to directly calculate an inverse rotation matrix rather than calculating the forward rotation and then transposing it.
2019-10-23 14:44:08 +03:00
Paul Riseborough
36de2b3dc1
EKF: Use matrix library for quaternion to rotation matrix conversion
2019-10-23 14:44:08 +03:00
bresch
1a4ab069c9
rate controller: add override specifiers whenever needed
2019-10-22 09:12:19 -04:00
bresch
29f71fff96
ekf: Add override specifier for all functions that override virtual functions of the estimator interface class
2019-10-22 09:12:19 -04:00
bresch
50167bfbcf
estimator interface: add deprecated functions for backward compatibility
2019-10-22 20:19:56 +11:00
bresch
b38458c2ab
Terrain estimator: formatting and remove redundant comments
2019-10-22 20:19:56 +11:00
bresch
0aef0eda59
terrain_estimator: remove dead code. Since the terrain estimator is
...
constantly reset on ground, it is not necessary anymore to fuse fake
measurements on ground if the range measurements are bad.
2019-10-22 20:19:56 +11:00
bresch
370e04ee60
terrain_est: Continuously reset terrain height on ground using known
...
clearance. This is the best estimate as we should not rely on a distance
sensor while on the ground. This also helps when the drone is carried
over as it avoids starting with a crazy downward distance for optical
flow scaling.
2019-10-22 20:19:56 +11:00
bresch
e09e3e17a1
control: rename _range_aid_enabled to _is_range_aid_suitable
...
rename rangeAidConditionsMet to checkRangeAidSuitability
2019-10-15 11:10:36 +02:00
bresch
fac69d07a3
control: refactor rangeAidConditionsMet function
2019-10-15 11:10:36 +02:00
Paul Riseborough
eae6e8f19c
EKF: Fix on ground yaw drift when using EKF2_MAG_TYPE = 4
2019-10-08 20:08:42 +11:00
RomanBapst
4e946d5bcb
implemented synthesized magnetometer Z measurement
...
- calculate a theoretical value based on the knowledge of the direction
and strength of the magnetic field vector and X/Y sensor measurements
- needs knowledge about location on earth to work
2019-10-08 20:02:16 +11:00
kamilritz
f005e0ea8f
Remove deprecated ev_innov_gate param
2019-09-27 10:00:45 -04:00
kritz
b78429aa60
Fix print statements cast error on posix firmware builds ( #647 )
2019-09-25 14:34:43 +02:00
kritz
4a38f5a2f6
Add timestamp to ECL print statements, ( #644 )
...
which is helpful for EKF replay debugging.
2019-09-25 11:24:42 +02:00
kritz
bb88d4ce5e
Undo wrong comment change
2019-09-24 08:50:29 +10:00
Kamil Ritz
562731936a
Update quaternion direction in documentation pdf
2019-09-24 08:50:29 +10:00
kamilritz
8c061fb6a4
Fixing wrong label of quaternion direction
2019-09-24 08:50:29 +10:00
Jannik Beyerstedt
fe3fec413c
fix #595 and add new all-in-one conversion script (PX4 only)
2019-09-24 08:20:16 +10:00
kamilritz
83eb326076
Missing posNED
2019-09-24 07:48:46 +10:00
kamilritz
fd6b364c11
posNED to pos and velNED to vel and add ev vel covariances to reset
2019-09-24 07:48:46 +10:00
kamilritz
4f6ca3a74c
Replace rest of spaces with tabs
2019-09-24 07:48:46 +10:00
kamilritz
cea053820d
Remove spaces with tabs
2019-09-24 07:48:46 +10:00
kamilritz
1e57c4bbec
Fix white space
2019-09-24 07:48:46 +10:00
kamilritz
10cbd79db7
Rotate external vision info in reset function if necessary
2019-09-24 07:48:46 +10:00
kamilritz
4511b9ff5e
Add missing checks for flags.ev_vel
2019-09-24 07:48:46 +10:00
kamilritz
e7d927c899
Stop using bad GPS when we have vision velocity
2019-09-24 07:48:46 +10:00
kamilritz
bd8f05567a
set vel_pos_test_ratio to zero if no fusion happens
2019-09-24 07:48:46 +10:00
kamilritz
4b30de587f
Make vel_pos innov gate variable name clearer
2019-09-24 07:48:46 +10:00
kamilritz
4237d7ccd7
Improve external vision position fusion
2019-09-24 07:48:46 +10:00
kamilritz
3e8139ff9f
Enable vision velocity fusion
2019-09-24 07:48:46 +10:00
kamilritz
149233a9ab
Add velocity observations to external vision interface
2019-09-24 07:48:46 +10:00
Matthias Grob
62a1e07512
ecl_EKF: Do not include SquareMatrix from Matrix library
...
because the template of upper_right_triangle() contains /2 and
swig fails to create a wrapper for that (suddenly)
2019-09-18 08:42:58 +02:00
Daniel Agar
eddee193d1
update matrix git tag to latest
2019-09-18 08:42:58 +02:00
Julian Kent
4c4c1f2984
Use copyTo for writing to memory blocks
2019-09-18 08:42:58 +02:00
Julian Kent
8cc8db211c
Fix copy_quaternion reference in code generation
2019-09-18 08:42:58 +02:00
Julian Kent
8d60f8ba8f
Remove direct unsafe access to matrix internal data
2019-09-18 08:42:58 +02:00
Nico van Duijn
c446ee444a
EKF: fake rng if faulty on ground
2019-09-18 10:15:37 +10:00
Andreas Antener
4f19d457c4
ekf, control: make sure mag fusion doesn't start anymore when we have GPS heading fusion active
2019-09-18 09:27:24 +10:00
Jan Brehmer
93eb1266f6
EKF: reset position when stopping GPS use and EV is active
2019-09-18 08:33:40 +10:00
Nico van Duijn
267195a11b
EKF: remove check for faulty flag in fake rng
...
This removes the check for _rng_hgt_faulty in the decision of publishing
a fake range measurement. The reason for this is that some distance sensors
don't populate the quality flag, even if they are saturated. Hence, if we
are on the ground and not moving, it is safe to publish a fake measurement
of the distance sensor and overwrite the actual sensor data.
2019-09-12 17:45:37 +10:00
Nico van Duijn
933189eac0
EKF: fix rng_faulty flag when sensor is stuck
2019-09-12 17:45:37 +10:00